Managed Package: How huge it could be?
The only hard limit we have hit is the "characters of Apex Code" one where some orgs have a 3 million character limit set. Salesforce support have upped that limit for us when we have asked. SFDX scratch orgs default to a 10 million character limit.
I'm also interested to know if there are hard limits: we haven't hit any others, though our managed packages are probably "medium sized" compared with those of other ISVs.
Suggest you keep an eye on what second-generation packaging has to offer before changing too much right now.
We have finally hit the limit - so now I know how huge managed package could be as for now, i.e. checked in practice and confirmed by SF support.
10,000 files - limit for non-certified managed packages, i.e. without passing security review.
12,500 files - for certified managed packages, i.e. for those which have passed security review.
Pay attention, these are hard limits - no way to extend by request. And also - every file contributes to this limit, i.e. tests, translations etc., even those tiny xml files with api version which go in pair with Apex classes and lightning components.
Also got confirmation that 39 MB limits applies to SOAP deployment. But in Winter 19 there is a promising option for sfdx command called 'Rest Deployment' - according to documentation it allows to bypass 39 MB limits.
So now we are hitting the wall with our heads what to do with our huge monolitic managed package, which moves closer and closer to the limit with each commit)
Limits are different now, 30k from API 47. See below:
You can deploy or retrieve up to 10,000 files at once. AppExchange packages use different limits. In API version 43.0 and 44.0, AppExchange packages can contain up to 12,500 files. In API version 45.0, AppExchange packages can contain up to 17,500 files. In API version 46.0, AppExchange packages can contain up to 22,000 files. In API version 47.0 and later, AppExchange packages can contain up to 30,000 files. The maximum size of the deployed or retrieved .zip file is 39 MB. If the files are uncompressed in an unzipped folder, the size limit is 400 MB.
Source: https://developer.salesforce.com/docs/atlas.en-us.api_meta.meta/api_meta/meta_deploy.htm