Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

2.0 Kickoff #163

Closed
karapigeon opened this issue Jun 22, 2015 · 11 comments
Closed

2.0 Kickoff #163

karapigeon opened this issue Jun 22, 2015 · 11 comments
Assignees
Labels

Comments

@karapigeon
Copy link

As you may know, @soffes has formed a new Github organisation for ZipArchive. (previously called SSZipArchive. We have been planning to build a 2.0 version that includes wide-spread improvements. We're looking at modern Objective-C, better Swift bridging, nullability and more. I am looking for people who would like to contribute to the new version to start brainstorming.

So let's start that here! 😃

@karapigeon
Copy link
Author

I personally think that it is time to put minizip to bed and either find something that's better or write our own specifically for ZipArchive. Our current version of ZipArchive is using a lot of legacy Objective-C and C technologies.

@karapigeon
Copy link
Author

@jhudsonWA What do you think?

@jhudsonWA
Copy link
Member

Got it. minizip does seem to be the defacto for similar projects. However, it also has not been updated for years.

@jhudsonWA
Copy link
Member

If we are brainstorming, I would love a way to be able to get progress during the unzipping process for each file and not just an event once a file is unzipped or zipped.

@karapigeon
Copy link
Author

I would think that in between the time that minizip went inactive, a lot of improvements to that area probably exist. I think that we should build a modern minizip-like library that we can use for ZipArchive (2.0). Maybe that could be a repository/project on its own?

@karapigeon
Copy link
Author

We should also plan out what features we would like in the 2.0 version. If there are any unnecessary ones that exist in v0.3.2. Most of the existing features will be remade for modern Objective-C and a style guide.

@scspijker
Copy link

It seems that the ZIP format hasn't really changed over the last 5 years, so the fact that Minizip hasn't been updated recently would not disqualify it from being a well proven and tested library :)

However, I do think ZipArchive should get a 2.0 release, and the main thing would be to first test all the pull requests that have (largely untested) been granted recently.

Swift support could be a version 3.0. Cleaning up and testing current HEAD would be most important imho.

@karapigeon
Copy link
Author

Sorry for the delayed response! I've been in the middle of an overseas move.

I agree with @scspijker that we should fix the Objective-C version and improve the codebase. I am sorry if some of the recently PRs have been granted without being tested. We also need to rename all classname/references from SSZipArchive to just ZipArchive as @soffes recently moved the project into its own Github Organisation.

@karapigeon karapigeon self-assigned this Jul 10, 2015
@karapigeon
Copy link
Author

As previously talked about, I have been working on fixing the Objective-C version before we move onto 3.0 features. I have done the following:

  • Created a new framework project with the name "ZipArchive".
  • Rewrote portions to ensure legacy Objective-C was removed.
  • Cleaned up miscellaneous bits and bobs to ensure we're following Apple's style guide.
  • Up-to-date sample code in README.md.
  • Added support for Carthage.

Some of the tests are still failing, but I am going to try to fix them in the coming week, but please feel free to contribute if you would like to. I am currently in a contract and that will have to take priority until it's finished. Let's try to fix what we have before adding additional functionality to ZipArchive! 💥 👍

@karapigeon
Copy link
Author

I would appreciate any PRs that fix the following broken tests: 😙 🍺

- (void)testMultipleZipping;
- (void)testSmallFileUnzipping;
- (void)testUnzippingWithSymlinkedFileInside;
- (void)testUnzippingWithRelativeSymlink;
- (void)testUnzippingWithCancel;

@karapigeon
Copy link
Author

@arthurj58 Create a new issue please. This is a thread about the future of this project.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants