...on an assembly, do it manually on a part.
I discovered yesterday that an assembly is less (file size wise) than the sum of it's parts.
If you run "Defeature" on an assembly, then the resulting file has gathered into it the component parts, which makes for a vastly greater file size. Not what I wanted to e-mail to my customer.
The answer I found was to save the assembly as a part, then load the part and delete the "features" you want to keep private. The resulting manually "defeatured" part file is considerably smaller, and will shrink further when in a ZIP file.
Comments welcomed.
SolidworksAssemblies