d1bb5c3cfc
wire up support for non-crate non-workspace projects and minor fixes
2023-10-06 17:50:30 +02:00
97ae81977d
generator: update template for workspace projects
2023-10-06 17:04:38 +02:00
f35b5f4e88
generator: add mode and template for non-workspace projects
2023-10-06 16:48:49 +02:00
67712e7baa
fix some import paths from cargo2rpm
2023-10-06 13:34:46 +02:00
52e2482019
accept "partial" version arguments; resolve to latest matching version
2023-10-06 02:17:34 +02:00
2f1505daf2
conf: implement new TOML-based config file format
...
- does not rely on custom INI parsing
- can be validated automatically with the defined schema
- actual support for lists, multi-line strings, booleans
When a "rust2rpm.toml" file is found, it takes precedence. Otherwise,
rust2rpm will fall back to existing {,.,_}rust2rpm.conf files and
convert to the new format internally.
2023-10-05 20:03:08 +02:00
2edba5f881
drop support for Python 3.10
2023-10-04 11:32:35 +02:00
d999129315
rename NEWS to CHANGELOG.md (it was markdown all along)
2023-10-04 11:31:51 +02:00
e9cfd222be
generator: define upstream_version / crate_version as necessary
...
- crate_version is defined if crate version != package version
- upstream_version is defined if crate version != crate version
2023-10-04 00:20:17 +02:00
6087084fa0
templates: don't use %version_no_tilde macro when %version will do
...
This is already guarded by a check for crate version == package version,
so the version string cannot contain "~" characters at this point.
2023-10-03 23:43:10 +02:00
b1203d1f30
template: update patch comment for automatically generated patch
...
The automatically generated patch no longer only strips dependencies
but also potentially does other metadata normalization.
2023-10-03 22:50:58 +02:00
bf53a783b6
main: ensure patches are written with a trailing newline
2023-10-03 22:38:29 +02:00
4a9a7bd4a5
patching: only modify temporary files (and fix patch output)
2023-10-03 22:24:59 +02:00
11554c5053
add even more type annotations and start checking with mypy
2023-10-02 01:05:42 +02:00
eb448953a1
patching: refactor to use rust2rpm-helper if available
...
Also fixes test fixtures (some of which were actually *wrong* ...).
2023-10-02 00:33:44 +02:00
1fdcd8ca22
fix wrong type annotations and add a few missing ones
2023-10-01 23:36:20 +02:00
b94ecf1ece
tests: add two missing assert statements
2023-10-01 23:01:38 +02:00
cdc2355460
Release 24.4.2
2023-09-30 16:51:36 +02:00
7a07a61fd8
Release 24.4.1
2023-09-30 15:50:10 +02:00
a58f78d7e8
tests: adapt fixtures for cargo2rpm v0.1.8
2023-09-30 15:48:57 +02:00
1432b5d1a2
generator: fix some type annotations
2023-09-30 15:35:10 +02:00
6cb6cc3f78
generator: correctly mark warning about missing license as comment
2023-09-24 23:28:43 +02:00
be5b992f24
Release 24.4.0
2023-08-08 14:16:51 +02:00
4cfdb49afd
template: move Requires below License tag in binary packages
2023-08-07 21:41:05 +02:00
03156817a9
template: escape cargo_license_summary macro in comment
2023-08-06 22:56:10 +02:00
2df685241e
crate: exclude "target" directory from license file search paths
2023-08-06 11:23:56 +02:00
3231fba9ba
generator: filter out already enabled features from required feature flags
2023-08-06 11:14:45 +02:00
7166b781bd
template: include %cargo_license / %cargo_license_summary macros
...
The macros are now well-tested and can be used unconditionally for
packages that ship statically linked binaries (executables or
shared libraries).
2023-08-06 11:02:26 +02:00
a841ba0c1c
Release 24.3.3
2023-05-17 20:46:45 +02:00
294741a2b1
crate: fix undefined variable error caused by recent commit
2023-05-17 20:43:48 +02:00
bfe8c92989
Release 24.3.2
2023-05-17 20:04:38 +02:00
cf4ed29e5a
conf: fix reading lib+default.requires from rust2rpm.conf
...
The "default" feature is always implicitly defined, so it can always
be used in rust2rpm.conf. However, previous to this commit, it was not
loaded correctly if the crate did not explicitly define a "default"
feature.
2023-05-17 20:00:26 +02:00
jackyzy823
a4f4b0df93
crate: store crate before parsing
2023-04-27 21:28:08 +08:00
30185b6c8d
Release 24.3.1
2023-04-19 19:21:23 +02:00
b67933d097
add "riscv64" to list of target_arch values that are supported
2023-04-19 19:11:33 +02:00
e3c2ef7dda
conf: fix subtle bug in rust2rpm.conf validation
...
The "default" feature is always implicitly defined, even if not
explicitly listed in the crate metadata, so it's always valid.
2023-04-03 00:05:21 +02:00
1fdcc4a2a0
Release 24.3.0
2023-04-01 16:31:36 +02:00
9de25b0a25
conf/generator: support overriding generated RPM summary
2023-04-01 16:20:26 +02:00
267d9fbef9
conf/template: support specifying supported architectures
2023-04-01 15:59:15 +02:00
6f40c1a026
Release 24.2.0
2023-03-20 22:20:35 +01:00
26aa680301
cli: add automatic --compat flag, deprecate manual --suffix argument
2023-03-18 20:15:54 +01:00
d0d3742a07
Release 24.1.0
2023-03-03 19:30:37 +01:00
851f7468ea
conf: simplify rust2rpm.conf file parsing tests
2023-03-03 19:02:50 +01:00
a4475f92da
conf: support explicitly enabling non-default features
2023-03-03 18:53:02 +01:00
bd09ff4106
conf: fix undefined variable and improve test coverage
2023-03-03 00:38:30 +01:00
a0e869199f
generator: add flags for required features to cargo macro calls
2023-03-03 00:13:01 +01:00
0bf11c122d
main: bail if crate version has un-stripped "build metadata"
...
Versions like "0.4.60+curl-7.88.1" currently break package builds.
Stripping "build metadata" automatically and operating with
"crate version" != "rpm version" might be supported in the future,
but this will require changing the %{crate_instdir} macro, among
other things.
Coincidentally, setting the %{crate_version}" macro in cases of
"crate version" != "rpm version" would also render the lua
implementation of the %{version_no_tilde} macro obsolete.
2023-03-02 22:02:21 +01:00
81554651be
main: warn if package uses dependencies that are stricter than SemVer
2023-03-02 21:53:12 +01:00
5705f7e5d2
tests: no longer break every new year
2023-03-02 21:06:40 +01:00
012b99c84c
metadata: add interactive mode for guess_main_package
2023-03-02 20:55:58 +01:00