# Publishing Packages

**URL:** https://discourse.julialang.org/t/publishing-packages/29839
**Category:** New to Julia
**Tags:** package-manager
**Created:** [October 12, 2019, 11:29pm UTC](https://discourse.julialang.org/t/publishing-packages/29839 "2019-10-12T23:29:11Z")
**Posts on this page:** 3
**Page:** 1

<div class="post-metadata">

### Author: ![sstadick](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sstadick/32/10776_2.png) [@sstadick](https://discourse.julialang.org/u/sstadick)
#### Post date: [October 12, 2019, 11:29pm UTC](https://discourse.julialang.org/t/publishing-packages/29839/1 "2019-10-12T23:29:11Z")

</div>

Is there any official documentation on publishing packages to the Registrator? I see the [README](https://github.com/JuliaRegistries/Registrator.jl), and was able to follow it, but I’m looking for more details on how versions are managed, and how documentation is generated for [https://pkg.julialang.org/docs/](https://pkg.julialang.org/docs/).

As an aside, is there a roadmap for tooling surrounding the language?

---

<div class="post-metadata">

### Author: ![Tamas\_Papp](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/tamas_papp/32/25949_2.png) [@Tamas\_Papp](https://discourse.julialang.org/u/Tamas_Papp)
#### Post date: [October 13, 2019, 8:13am UTC](https://discourse.julialang.org/t/publishing-packages/29839/2 "2019-10-13T08:13:29Z")

</div>

> [@sstadick](#):
>
> more details on how versions are managed

I don’t think that the registry does anything special here. The Pkg docs

[https://julialang.github.io/Pkg.jl/dev/compatibility/](https://julialang.github.io/Pkg.jl/dev/compatibility/)

may be a good starting point.

> [@sstadick](#):
>
> how documentation is generated for [https://pkg.julialang.org/docs/](https://pkg.julialang.org/docs/).

The [announcement](https://discourse.julialang.org/t/new-pkg-julialang-org/22622/) mentions

> **[GitHub - JuliaDocs/DocumentationGenerator.jl](https://github.com/JuliaDocs/DocumentationGenerator.jl)**
>
> Contribute to JuliaDocs/DocumentationGenerator.jl development by creating an account on GitHub.

but I agree that it may be hard to find for new users. Please consider making a PR to the readme above, mentioning this.

> [@sstadick](#):
>
> is there a roadmap for tooling surrounding the language?

Not that I am aware of. A lot of the discussion for features is in issues for Pkg.jl and the registry. The next major thing is automatic merging,

> <https://github.com/JuliaRegistries/General/pull/3342>
>
> Fixes #3673 
> 
> \## Summary
> 
> This is an implementation of automatic merging of …pull requests made to a Julia package registry. It is suitable for use with the General registry as well as any other registry.
> 
> \## Description
> 
> If a pull request is opened by the @JuliaRegistrator user, and if the pull request meets all of the automatic merging guidelines in #3673, then the Travis job will automatically merge the pull request.
> 
> If a pull request is not opened by the @JuliaRegistrator user, then it will not be automatically merged.
> 
> In order to enable this functionality, the following three steps need to be taken by someone with administrator permissions on the General registry:
> \- \[\] 1. Add a Travis encrypted environment variable with name \`GITHUB\_AUTOMERGE\_TOKEN\` that contains a GitHub token for a GitHub account that has push access to the General registry.
> \- \[\] 2. Add a Travis cron job for the General registry. The branch should be \`master\`. The interval should be \`Daily\`. The "options" should be \`Always run\`. \*\*This last part is very important - the Travis cron job MUST be set to \`Always run\`. The merging will only happen on a Travis cron build or a Travis API build. Merging does not happen on regular Travis branch builds on the \`master\` branch. Therefore, if the Travis cron job is not set to \`Always run\`, then you will never automerge any pull requests!\*\*
> \- \[\] 3. Merge this pull request into \`master\`.
> 
> I have set up a demo registry (https://github.com/bcbi/General). Please make pull requests to the demo registry to try this functionality out! Let me know if you want me to add your GitHub username to the list of usernames for which auto-merging is authorized.
> 
> \---
> 
> \## Note
> 
> It is important to note that if your pull request does not meet the guidelines for automatic merging, this does not mean that your pull request will never be merged. It just means that your pull request will require manual review by a human.
> 
> \> These guidelines are intended not as requirements for packages but as very conservative guidelines, which, if your new package or new version of a package meets them, it may be automatically merged.

---

<div class="post-metadata">

### Author: ![sstadick](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sstadick/32/10776_2.png) [@sstadick](https://discourse.julialang.org/u/sstadick)
#### Post date: [October 13, 2019, 6:24pm UTC](https://discourse.julialang.org/t/publishing-packages/29839/3 "2019-10-13T18:24:47Z")

</div>

I’ve submitted a PR just to get the very basic links in there: [https://github.com/JuliaRegistries/Registrator.jl/pull/234](https://github.com/JuliaRegistries/Registrator.jl/pull/234).

I’m not sure I understand the process enough at the moment to write more in depth instructions yet.
