diff --git a/example/minio_example.dart b/example/minio_example.dart
index 055e7d82fc68e1e658e347a17a25fe2cc429a7e9..faccb57073abb6ed7a2161de53b6d0dac72319af 100644
--- a/example/minio_example.dart
+++ b/example/minio_example.dart
@@ -33,7 +33,8 @@ void main() async {
   print('--- object region:');
   print(region);
 
-  final etag = await minio.fPutObject(bucket, object, 'example/$object');
+  final etag = await minio.fPutObject(
+      bucket, object, 'example/$object', (int progress) {});
   print('--- etag:');
   print(etag);
 
diff --git a/example/miniox_example.dart b/example/miniox_example.dart
index 4b6a709d3fbe054aefcc2b6e9afb196d2c3c9a3f..9a719a900af3d51b3cdf2c794988ddc7129e3ca1 100644
--- a/example/miniox_example.dart
+++ b/example/miniox_example.dart
@@ -10,7 +10,8 @@ void main() async {
     secretKey: 'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
   );
 
-  await minio.fPutObject('testbucket', 'test.png', 'example/custed.png');
+  await minio.fPutObject(
+      'testbucket', 'test.png', 'example/custed.png', (int progress) {});
 
   final stat = await minio.statObject('testbucket', 'test.png');
   assert(stat.size == File('example/custed.png').lengthSync());
diff --git a/pubspec.yaml b/pubspec.yaml
index 549fe8bf3386667e797ff5ffb40348b3893ceb02..00c3fb84453ad967aeece237347da12f46fcb46c 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -12,7 +12,7 @@ dependencies:
   http: ^0.13.1
   crypto: ^3.0.0
   convert: ^3.0.0
-  xml: ^5.0.2
+  xml: ^6.4.2
   buffer: ^1.1.0
   intl: ^0.17.0
   mime: ^1.0.0
diff --git a/test/minio_test.dart b/test/minio_test.dart
index 0974be0df786add20e9b61f29b131278952c1733..b519fa1e200b5b9239a124aab493c1c4275fc713 100644
--- a/test/minio_test.dart
+++ b/test/minio_test.dart
@@ -203,7 +203,8 @@ void testFPutObject() {
 
     test('fPutObject() inserts content-type to metadata', () async {
       final minio = getMinioClient();
-      await minio.fPutObject(bucketName, objectName, testFile.path);
+      await minio.fPutObject(
+          bucketName, objectName, testFile.path, (int progress) {});
 
       final stat = await minio.statObject(bucketName, objectName);
       expect(stat.metaData!['content-type'], equals('image/jpeg'));
@@ -218,7 +219,8 @@ void testFPutObject() {
       };
 
       final minio = getMinioClient();
-      await minio.fPutObject(bucketName, objectName, testFile.path, metadata);
+      await minio.fPutObject(
+          bucketName, objectName, testFile.path, (int progress) {}, metadata);
 
       final stat = await minio.statObject(bucketName, objectName);
       expect(
@@ -235,7 +237,8 @@ void testFPutObject() {
       };
 
       final minio = getMinioClient();
-      await minio.fPutObject(bucketName, objectName, testFile.path, metadata);
+      await minio.fPutObject(
+          bucketName, objectName, testFile.path, (int progress) {}, metadata);
 
       final stat = await minio.statObject(bucketName, objectName);
       expect(stat.metaData![userDefinedMetadataKey],
@@ -248,7 +251,8 @@ void testFPutObject() {
       await emptyFile.writeAsString('');
 
       final minio = getMinioClient();
-      await minio.fPutObject(bucketName, objectName, emptyFile.path);
+      await minio.fPutObject(
+          bucketName, objectName, emptyFile.path, (int progress) {});
 
       final stat = await minio.statObject(bucketName, objectName);
       expect(stat.size, equals(0));
@@ -273,7 +277,8 @@ void testSetObjectACL() {
       final minio = getMinioClient();
       await minio.makeBucket(bucketName);
 
-      await minio.fPutObject(bucketName, objectName, testFile.path);
+      await minio.fPutObject(
+          bucketName, objectName, testFile.path, (int progress) {});
     });
 
     tearDownAll(() async {
@@ -304,7 +309,8 @@ void testGetObjectACL() {
       final minio = getMinioClient();
       await minio.makeBucket(bucketName);
 
-      await minio.fPutObject(bucketName, objectName, testFile.path);
+      await minio.fPutObject(
+          bucketName, objectName, testFile.path, (int progress) {});
     });
 
     tearDownAll(() async {