Skip to content

Commit c152666

Browse files
committed
Merge remote-tracking branch 'origin/topic/awelzel/warn-on-bro-pkg-meta'
* origin/topic/awelzel/warn-on-bro-pkg-meta: User-visible warning when bro-pkg.meta is in use.
2 parents 7145064 + b5e089d commit c152666

File tree

3 files changed

+22
-0
lines changed

3 files changed

+22
-0
lines changed
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
### BTest baseline data generated by btest-diff. Do not edit. Use "btest -U/-u" to update. Requires BTest >= 0.63.
2+
XXXX-XX-XX XX:XX:XX WARNING Package one/alice/foo is using the legacy bro-pkg.meta metadata file. It will soon stop working unless updated to use zkg.meta instead. Please report this to the package maintainers.
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
# @TEST-EXEC: (cd packages/foo; git mv zkg.meta bro-pkg.meta; git commit -m 'Use bro-pkg.meta')
2+
# @TEST-EXEC: zkg install foo 2> stderr
3+
# @TEST-EXEC: TEST_DIFF_CANONIFIER='sed -r "s/[0-9]{2}/XX/g"' btest-diff stderr

zeekpkg/manager.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3303,6 +3303,9 @@ def _parse_package_metadata(parser, metadata_file):
33033303
return ""
33043304

33053305

3306+
_legacy_metadata_warnings = set()
3307+
3308+
33063309
def _info_from_clone(clone, package, status, version):
33073310
"""Retrieves information about a package.
33083311
@@ -3335,6 +3338,20 @@ def _info_from_clone(clone, package, status, version):
33353338
default_branch=default_branch,
33363339
)
33373340

3341+
# Remove in v3.0 by either silently ignoring LEGACY_METADATA_FILENAME
3342+
# completely or error with helpful instructions about zkg.meta.
3343+
if (
3344+
os.path.basename(metadata_file) == LEGACY_METADATA_FILENAME
3345+
and package.qualified_name() not in _legacy_metadata_warnings
3346+
):
3347+
LOG.warning(
3348+
"Package %s is using the legacy bro-pkg.meta metadata file. "
3349+
"It will soon stop working unless updated to use zkg.meta instead. "
3350+
"Please report this to the package maintainers.",
3351+
package.qualified_name(),
3352+
)
3353+
_legacy_metadata_warnings.add(package.qualified_name())
3354+
33383355
metadata = _get_package_metadata(metadata_parser)
33393356

33403357
return PackageInfo(

0 commit comments

Comments
 (0)