Unplanned
Last Updated: 17 Aug 2017 09:14 by ADMIN
There should be API allowing to check if an archive is protected.
Unplanned
Last Updated: 20 Sep 2016 11:55 by ADMIN
Reading a password protected archive by passing a wrong password doesn't notify the user that the password is wrong. Accessing one of the entries in the archive throws a generic "Invalid data" exception.

Steps to reproduce:
1. Create a zip file with password.
2. Open the same archive with the API passing wrong password and then try to one of the entries.
Observed: InvalidDataException is thrown when trying to read one of the entries in the archive.
Expected: The exception should be more meaningful and if possible occur when reading the archive. There should be API allowing to check if the password is correct.
Unplanned
Last Updated: 17 Aug 2017 09:12 by ADMIN
Add functionality for the ZipPackage to span across multiple files.
Unplanned
Last Updated: 20 Jun 2018 16:01 by ADMIN
ADMIN
Created by: Martin Ivanov
Comments: 5
Category: ZipLibrary
Type: Feature Request
4
Provide a way for users to check whether a stream is a valid zip archive. Include a CRC check as well.
Unplanned
Last Updated: 28 Mar 2018 22:34 by David Totzke
ADMIN
Created by: Deyan
Comments: 3
Category: ZipLibrary
Type: Feature Request
3

			
Unplanned
Last Updated: 20 Nov 2018 13:55 by ADMIN
Although it is mandatory according to the specification, It seems like other applications don't require this record. Trying to open such an archive with RadZipLibrary currently throws InvalidDataException. 7zip creates such files.
Unplanned
Last Updated: 07 May 2021 09:36 by ADMIN

Currently, an exception is thrown when the file being unzipped already exists in the destination folder. Expose overload of the ExtractToDirectory() method allowing users to overwrite files.

Alternatively, the ZipArchiveEntry.ExtractToFile() method can be used:

using (ZipArchive source = ZipFile.Open(sourceFileName, ZipArchiveMode.Read, null))
{
    foreach (ZipArchiveEntry entry in source.Entries)
    {
        string fullPath = Path.GetFullPath(Path.Combine(destinationDirectory, entry.FullName));

        if (Path.GetFileName(fullPath).Length != 0)
        {
            Directory.CreateDirectory(Path.GetDirectoryName(fullPath));
            // The boolean parameter determines whether an existing file that has the same name as the destination file should be overwritten
            entry.ExtractToFile(fullPath, true);
        }
    }
}

Unplanned
Last Updated: 09 Mar 2023 09:18 by Remco
Created by: Remco
Comments: 0
Category: ZipLibrary
Type: Feature Request
3
Add support for self-extracting archive
Unplanned
Last Updated: 18 Apr 2018 10:27 by ADMIN
According to the specification, the Enhanced Deflating algorithm is similar to Deflate but uses a sliding dictionary of up to 64K.
Unplanned
Last Updated: 03 Oct 2018 16:42 by ADMIN
7zip and the Windows arvhiver report Data Error on all the files when the users try to extract an archive created with ZipLibrary and the default LzmaSettings.
Unplanned
Last Updated: 03 Dec 2018 12:35 by ADMIN
Telerik.Windows.Zip.InvalidDataException: 'Unknown compression method (0x92)' when initializing a Telerik.Windows.Zip.CompressedStream is thrown for some object streams (read from pdf) due to incorrect transformation header.
Unplanned
Last Updated: 26 Sep 2019 14:50 by ADMIN
During a ZipArchive creation, when a second stream for creating an entry is opened while the first is still in use the ZipArchive is created with no error message, but the first entry occurs broken (The destination file could not be created).
Unplanned
Last Updated: 02 Mar 2023 10:22 by Joe
Umlaut chars in file names not rendered correctly after extract form archive made with Windows, 7-Zip
Unplanned
Last Updated: 08 Mar 2024 06:47 by Joe
When extracting zip archives that contain empty folders with 7zip an error message occurs: "Headers Error"

Unplanned
Last Updated: 17 Aug 2017 09:24 by ADMIN
When updating ZIP archive, there is no need for loading it fully in the memory. Each entry is represented as a separate stream; when the ZipArchive is disposed, each entry is written in the OutputStream which is MemoryStream. When an entry is written in the OutputStream it is read from the source file if it is not changed. The MemoryStream is used because the source file is needed to get the entries contents. 

A temporary file can be used instead and there will be no need of the memory stream, so that large files will be updated without using much memory (which causes OutOfMemoryException).
Unplanned
Last Updated: 15 Jun 2021 08:25 by ADMIN
Created by: Paweł Korczak
Comments: 0
Category: ZipLibrary
Type: Feature Request
0
According to the .ZIP File Format SpecificationBZIP2 is an open-source data compression algorithm developed by Julian Seward.
Unplanned
Last Updated: 11 Oct 2021 15:18 by ADMIN
Writing content into a ZipArchiveEntry using the PdfStreamWriter leads to a wrong offset of the xref table and the objects in it:
MemoryStream ms1 = new MemoryStream();

using (ZipArchive archive = new ZipArchive(ms1, ZipArchiveMode.Create, false, null))
{
	using (PdfFileSource fileSource = new PdfFileSource(File.OpenRead(documentToSplit)))
	{
		string splitDocumentName = "1st page.pdf";
		using (ZipArchiveEntry entry = archive.CreateEntry(splitDocumentName))
		{
			using (PdfStreamWriter writer = new PdfStreamWriter(entry.Open()))
			{
				PdfPageSource page = fileSource.Pages[0];
				writer.WritePage(page);
			}
		}
	}
}

File.WriteAllBytes("exported.zip", ms1.ToArray());


Unplanned
Last Updated: 09 Aug 2022 09:18 by ADMIN
The following error is thrown when a zip containing duplicate file names is iterated through:
System.ArgumentException: 'An item with the same key has already been added.'
Unplanned
Last Updated: 09 May 2023 14:28 by Massimo
Created by: Massimo
Comments: 0
Category: ZipLibrary
Type: Feature Request
0
Add events for the beginning and for the end of file extraction.