# PR to stdlib

**URL:** <https://discourse.julialang.org/t/pr-to-stdlib/25369>\
**Category:** General Usage\
**Tags:** question\
**Created:** [June 17, 2019, 2:55pm UTC](https://discourse.julialang.org/t/pr-to-stdlib/25369 "2019-06-17T14:55:38Z")\
**Posts on this page:** 4\
**Page:** 1

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [June 17, 2019, 2:55pm UTC](https://discourse.julialang.org/t/pr-to-stdlib/25369/1 "2019-06-17T14:55:38Z")

</div>

I wanted to add “default” functionality to `TemrinalMenus.jl` (so one could specify a default pre-selected item/s to the menus).

1. So I `]dev TerminalMenus`
2. changed stuff in `.julia/dev/TerminalMenus`
3. added documentations and tests (and tested it)
4. and wanted to change the remote to my fork so I could do a PR, but this is where I got stumped

What remote do I change this to? TemrinalMenu is a standard library, it doesn’t have a github-repository I can point at. I also failed to point to my fork of Julia:

```bash
$ git remote set-url origin git@github.com:yakir12/julia.git
$ git push
To github.com:yakir12/julia.git
 ! [rejected] master -> master (fetch first)
error: failed to push some refs to 'git@github.com:yakir12/julia.git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.

```

Not sure what I’m supposed to do.

Help.

Oh wait, does this mean that I need to work on julia master…? Just to contribute to a stdlib…? But then I’ll have to build julia locally?

Lord. Please be gentle.

---

<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:** [June 17, 2019, 3:16pm UTC](https://discourse.julialang.org/t/pr-to-stdlib/25369/2 "2019-06-17T15:16:43Z")

</div>

Did you branch? There are many descriptions on this forum, eg

> [@Develop a local version of a registered package and submit changes as a pull request](https://discourse.julialang.org/t/develop-a-local-version-of-a-registered-package-and-submit-changes-as-a-pull-request/24868):
>
> I’ve been working through how one would go about making changes to a registered Julia package and submit the changes as a pull request. I haven’t found one source that explains the whole process, so I thought I’d share what I’ve come up with here. Let me know if anything seems wrong or if there are better ways to do this! Also, I did find a nice [PR to the Pkg.jl repo](https://github.com/JuliaLang/Pkg.jl/pull/1145) that would add a lot of this to the Pkg docs, though the approach is slightly different from what I have below. You can use the…

> [@Recommended way to develop/fix with packages](https://discourse.julialang.org/t/recommended-way-to-develop-fix-with-packages/14436/2):
>
> This is my workflow (for patching a hypothetical Example package): Get a local copy of the package, this can be done with pkg\> develop Example. This will clone the package to ~.julia/dev/Example by default. It will also make sure that the local copy is the one that is “installed” in the sense that using Example will use the files in that local folder. Edit the package in ~.julia/dev/Example and make sure your changes work as you expect. Fork the package on GitHub and add your fork as a remote.…

A PR to the Julia repo is conceptually not different from making a PR to a package.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [June 17, 2019, 3:19pm UTC](https://discourse.julialang.org/t/pr-to-stdlib/25369/3 "2019-06-17T15:19:26Z")

</div>

Thank you Tamas.

> [@Tamas\_Papp](#):
>
> There are many descriptions on this forum

I’m not qualified to do this, but it would have been good to have this all nicely curated in the docs (of Pkg perhaps). I’ll read up and try again.

---

<div class="post-metadata">

**Author:** ![yakir12](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/yakir12/32/297_2.png) [@yakir12](https://discourse.julialang.org/u/yakir12)\
**Post date:** [June 17, 2019, 3:26pm UTC](https://discourse.julialang.org/t/pr-to-stdlib/25369/4 "2019-06-17T15:26:11Z")

</div>

> [@Tamas\_Papp](#):
>
> Did you branch?

OK, that was it. I did not. Thanks for knowing everything.

For anyone interested in the functionality itself, here’s the PR:

> <https://github.com/JuliaLang/julia/pull/32344>
>
> This adds the optional \`default\` keyword to the TerminalMenus types which allows… for setting default pre-selected items.
