Merge pull request #41537 from tianon/apparmor-tilde

Also trim "~..." from AppArmor versions
diff --git a/pkg/aaparser/aaparser.go b/pkg/aaparser/aaparser.go
index 50ada7f..2b5a260 100644
--- a/pkg/aaparser/aaparser.go
+++ b/pkg/aaparser/aaparser.go
@@ -58,6 +58,8 @@
 
 	// trim "-beta1" suffix from version="3.0.0-beta1" if exists
 	version = strings.SplitN(version, "-", 2)[0]
+	// also trim "~..." suffix used historically (https://gitlab.com/apparmor/apparmor/-/commit/bca67d3d27d219d11ce8c9cc70612bd637f88c10)
+	version = strings.SplitN(version, "~", 2)[0]
 
 	// split by major minor version
 	v := strings.Split(version, ".")
diff --git a/pkg/aaparser/aaparser_test.go b/pkg/aaparser/aaparser_test.go
index 64ec814..cf9280f 100644
--- a/pkg/aaparser/aaparser_test.go
+++ b/pkg/aaparser/aaparser_test.go
@@ -44,6 +44,14 @@
 			version: 205000,
 		},
 		{
+			output: `AppArmor parser version 2.2.0~rc2
+Copyright (C) 1999-2008 Novell Inc.
+Copyright 2009-2012 Canonical Ltd.
+
+`,
+			version: 202000,
+		},
+		{
 			output: `AppArmor parser version 2.9.95
 Copyright (C) 1999-2008 Novell Inc.
 Copyright 2009-2012 Canonical Ltd.