ChakraCore: Inconsistent download archives across platforms

The download archives have an inconsistent structure on different platforms.

  1. The macOS and Linux archives contain a ChakraCoreFiles folder which contains everything, including the LICENSE file.

  2. The Windows archives, however, don’t contain this parent ChakraCoreFiles folder, and instead have all the files at the root of the archive. They also don’t include the LICENSE file.

cc @obastemur

About this issue

  • Original URL
  • State: open
  • Created 7 years ago
  • Comments: 15 (9 by maintainers)

Most upvoted comments

Oh I think I misunderstood… Static archives (.a/.lib files) should not be included because they are too system-specific and large. However, shared object files for embedding ChakraCore (by .so/.dll) should be provided in these packages, in addition to the runnable host.

Therefore, across the board these packages should provide a runnable host and the tools necessary to dynamically link ChakraCore in an application.

@obastemur That’s totally fair. In that case I think we should say across the board that the purpose of these archives is not to be consumed by embedders, but rather ONLY to provide a runnable host from a given release (ch).

Spoke with @dilijev a bit and realised that the linux packages are also missing the libchakracore.a files. We might want to re-visit what the purpose of these released archives is, and make sure that they are fit for purpose.

We had discussed this initially (offline) hence I don’t think we have any reference on Github. Let me try to explain;

We do not miss archive files. Xplat package ensures an easy experience with ChakraCore targeting multiple distros with a single binary.

There are multiple reason for not including archive files with xplat packages. Couple of them;

  • Archive files are more platform dependent and used for static embedding on xplat. Our linux package targets multiple distros.
  • Are we going to ship the archive files for ICU too?
  • How about stdlib?

The list goes on with the package size etc.

If a project wants to embed ChakraCore statically, well, we have enough samples are explaining the usage.

my 2 cents;; unless there is a good reason, I’m -1 on putting the platform dependent archive file into xplat packages and raising confusions.

Agree with @mathiasbynens and I believe we need to change couple of things with Windows bundles.

  • put the samples and LICENSE (similar to xplat package)

@dilijev @MSLaguana what do you think?