Hot answers tagged

99

Yes, there was a recently pushed incorrect paclet update that will cause this startup hang. All platforms can be affected, not just Windows. For a workaround, start a standalone kernel (WolframKernel.exe on Windows, WolframKernel in a terminal on Linux; on Mac you will need the full path to the kernel binary, typically a location like /Applications/...


51

The following answer is not complete, but does give one possible solution. There's a lot more to learn about the paclet manager, so please contribute another answer if you can, or correct this answer if you find any mistakes. I originally posted this on Wolfram Community, following a nice tutorial by Emerson Willard on how to create paclets using Workbench....


38

This is a community project to produce useful documentation for PacletInfo.m. Feel free to edit and improve this answer. While the Paclet Manager is loaded from .mx files, its plain text .m sources are also available. Much of the information in this post comes from the comments in those source files. See SystemOpen@Lookup[PacletInformation["PacletManager"...


33

Update for version 12.1 Starting with version 12.1, paclets are now exposed as user-accessible packaging functionality. They are documented here. Todd Gayley of WRI has published some preliminary documentation about Paclets and Paclet Development. There is also an associated introductory video. Original Response A paclet is a distribution mechanism for ...


30

Paclets are downloaded chunks of curated computable data: Load-on-Demand Curated Data Mathematica 6 pioneers the powerful concept of built-in computable data sources. An efficient load-on-demand mechanism makes hundreds of gigabytes of carefully curated and continually updated data immediately available inside Mathematica for use in ...


28

DocGen Paclet Note: the main function is no longer GenerateRefPages but rather GenerateSymbolPages The paclet can be gotten by running: PacletInstall["DocGen", "Site" -> "http://www.wolframcloud.com/objects/b3m2a1.paclets/PacletServer" ] Or by going here and just downloading it. For those interested there's a GitHub repo for it here but I am ...


27

Update: Template Notebook I finally got around to finishing my curated data template notebook. You can see it here Currently it only supports single-type data paclets, but a template for multi-type curated data is in the works and I'll test that with my accumulated Stack Exchange data. In the meantime, I took some arbitrary airline safety data and turned ...


24

Szabolcs answer shows how we can build a .paclet, but the PacletManager also contains the possibility to serve packages from an own site. As I realized after writing this, most of the information here can also be found in this Wolfram Community post, a link contained in Szabolcs PacletInfo.m documentation project. Paclet Server Setup The easiest setup is ...


20

For a workaround, launch a standalone kernel and evaluate PacletSiteUpdate /@ PacletSites[] PacletUpdate["EntityFramework"] More detailed instructions can be found here (except substitute "CloudObject" with "EntityFramework"). Please see also this post on Wolfram Community for step by step instructions on all platforms.


20

First things first we set up the paclet server in the normal way as described here or here. Then all we need to do is pass the "raw.githubusercontent" version of that so that the resources themselves get downloaded instead of the HTML pages: PacletInstall[ "ServiceConnection_StackExchange", "Site" -> "http://raw.githubusercontent.com/paclets/...


19

Template Notebook I sunk some time into making a good template notebook for integrating with all this. It lives here: https://github.com/b3m2a1/mathematica-BTools/blob/master/Resources/Templates/ServiceConnectionTemplate.nb Original: If you just want the code I used to generate the paclet it lives here: PacletInstall["CustomServiceConnection", "Site"-&...


19

Update: The paclet-related functionality is documented in Mathematica 12.1. This answer is for people who are not interested in package development, and just need to install a Mathematica package which they obtained as a .paclet file. Note: Before using the functions in this guide, it may be necessary to evaluate Needs["PacletManager`"]. Specifically, this ...


18

I'm adding an alternate solution for Mac, as the suggested answer did not work for me. It might be due to me force quitting it prior to looking for a solution. This method is a bit of a scorched earth process though. In Finder go to ~/Library/Mathematica. Once there delete the Paclets folder. Next start up Mathematica again. Create a blank worksheet. ...


17

This posting is not a complete answer. Rather, it is a spelunking report concerning the kernel initialization sequence in version 11.0.1 as it relates to automatic paclet updating. In summary, every three days the system initialization sequence will automatically update paclets that are loaded from $PacletSite. $PacletSite is normally http://pacletserver....


17

Code See this for the main issue that made it take so long to get this up If you just want the service connection you can get it like this: PacletInstall["ServiceConnection_GoogleDrive", "Site"->"http://www.wolframcloud.com/objects/b3m2a1.paclets/PacletServer" ] Post So this turned out to be a bit of a bear to get the details right for, but not ...


15

tl;dr The Workbench packages are out-of-date for 11.1 and the whole system is not configured to easily work from Mathematica using a structure differing from the standard /language/ref URL structure or things like that. It's a massive pain to make it all work, but in the end we can get half-way decent, largely-functional documentation pages like this ...


15

Use PacletFind to find the installed versions, of the paclet, for exmaple: paclets = PacletFind["*MX*"] (*{Paclet[MXNetLink,11.1.0,<>]}*) Then evaluated PacletUninstall to remove said paclet. For example PacletUninstall[ paclets[[1]] ] I recommend using Part to select the paclet. If you copy/paste, you'll need to be careful to select the visible ...


13

Edit From version 9 PacletInfo.m file requires "Kernel" extension with Context specification. Without it loading paclets using contexts doesn't work (see old answer). Up to version 8 $Path has precedence over paclet search path no matter how package is loaded. In versions 9.0 - 10.1 paclet search path has precedence over $Path no matter how package is ...


11

Demonstration Here's what the end result looks like with my implementation: I included information that I personally find important and useful. Of course, this is a bit subjective, and there's a tradeoff between conciseness/skimmability and completeness. If the paclet has a standard icon that would be shown in the documentation centre, it will be used ...


11

The trick here is to make a paclet for just your documentation that won't ever interfere with your main package. To do we'll assume we have a main paclet named "MyPaclet". Then we'll generate its documentation and put it into a new paclet called "Documentation_MyPaclet". This name is chosen to imitate the way the ServiceConnect framework names its paclets (...


11

IntegerName depends on CountryData: IntegerName[2, {"Dutch", Entity["Country", "Netherlands"]}] because it needs to return the name of the integer for any language: This means that when you use IntegerName for the very first time it will download and install the "CountryData" paclet. Every subsequent use of IntegerName will not need to download this ...


11

Preview Notebooks / Extra Paclet Features I decided it was worth it to add some extra features to this thing as it's a good example of what paclets can do for you. First off, I added a little CreateStylesheetPreview function that'll take stylesheets and rasterize them to make a preview. e.g.: CreateStylesheetPreview[ {"Default.nb", "ReverseColor.nb" -&...


10

The trick here is that we'll host our paclets in Google Drive, but deploy a paclet server in the Wolfram Cloud that will route to the download links. In doing so we get the full 15GB of Google Drive space, but don't have to find a kludge (okay maybe this is a bit of a kludge) for the fact that Google Drive hosts its files as https://drive.google.com/.../...


9

Upload the file TensorSimplify.m to Base/Applications in your WolframCloud. Then <<TensorSimplify` loads the package.


8

If you want to extend Albert Retey's answer to just use Wolfram tech you can set up your server in the cloud. I just set this up for myself as a proof-of-concept and it seems to work just fine. Step 1: The Cloud Get a free cloud account that you can put these into. Obviously restrictions will apply to the size of the packages you can distribute and ...


8

I have a similar problem this morning. I open a new notebook and as soon as there is an attempt to start the kernel Mathematica freezes with the cell that is evaluating highlighted and "running." I did a clean start and that did not fix the problem. I uninstalled and reinstalled Mathematica. Starting Mathematica, opening a new notebook, and evaluating 2+2 ...


8

So the trick here is to use the file:// URL protocol: First set up a paclet server in the standard way (see also my brief explanation here) Next we need to set up our file:// URL properly. For example, I keep the local version of my paclet server here, before pushing it to the cloud: serverDir = FileNameJoin@ { $UserBaseDirectory, "...


8

There's nothing truly built in, but this is easy to roll if you know how to work with paclets. PacletInformation will return a "Context" parameter that specifies contexts for that paclet that may be loaded by Get. PacletFind[] will return all paclets. So then just attach the ".m" and ".wl" files and you get: Sort@DeleteDuplicates@Join[ FileBaseName[#] &...


7

Transferring my comment into an answer, There is a proxy-related bug in 11.2 that would cause this behavior. Try a direct connection, or if that is not an option, please get in touch with support who can provide an updated CURLLink paclet.


7

Preamble A few notes Here’s a system I’ve been working on that hits most of my targets. Note that until I have time to test it on another machine it should be considered only a proto-type solution. At this stage I expect the system to be very buggy, given the quantity of code that is backing it and the fact that I only have one old Mac to test things on. ...


Only top voted, non community-wiki answers of a minimum length are eligible