diff --git a/rbtools/commands/post.py b/rbtools/commands/post.py
index 372f9b040c804dea51f5d6630d5fe55d7b2ea25e..af917125595253051f127825af52ddf7e3570dbc 100644
--- a/rbtools/commands/post.py
+++ b/rbtools/commands/post.py
@@ -1763,7 +1763,7 @@ class Post(BaseCommand):
                         source_filename, source_revision, e)
                     continue
 
-                source_mimetype = guess_mimetype(source_file_content)
+                source_mimetype = guess_mimetype(data=source_file_content)
 
                 if mimetype != source_mimetype:
                     logger.debug('Skipping %s (%s): MIME type of source '
diff --git a/rbtools/utils/mimetypes.py b/rbtools/utils/mimetypes.py
index 59a68d70080cca8a57f1e3ad8baf4cca9752652d..1055162fa2cfa3a2e2974aaf09e68d60c27bf332 100644
--- a/rbtools/utils/mimetypes.py
+++ b/rbtools/utils/mimetypes.py
@@ -11,8 +11,10 @@ import subprocess
 from typing import Optional
 
 import puremagic
+from housekeeping import deprecate_non_keyword_only_args
 from typing_extensions import TypedDict
 
+from rbtools.deprecation import RemovedInRBTools70Warning
 from rbtools.utils.filesystem import is_exe_in_path
 
 
@@ -112,6 +114,7 @@ DEFAULT_MIMETYPE = 'application/octet-stream'
 _has_file_exe = None
 
 
+@deprecate_non_keyword_only_args(RemovedInRBTools70Warning)
 def guess_mimetype(
     *,
     data: bytes,
@@ -154,8 +157,8 @@ def guess_mimetype(
         assert p.stdin is not None
         assert p.stdout is not None
 
-        # Write the content of the file in 4k chunks until the ``file`` utility has
-        # enough data to make a determination.
+        # Write the content of the file in 4k chunks until the ``file``
+        # utility has enough data to make a determination.
         for i in range(0, len(data), 4096):
             try:
                 p.stdin.write(data[i:i + 4096])
