# Registry dirty

**URL:** https://discourse.julialang.org/t/registry-dirty/17989
**Category:** General Usage
**Created:** [November 25, 2018, 8:10pm UTC](https://discourse.julialang.org/t/registry-dirty/17989 "2018-11-25T20:10:16Z")
**Posts on this page:** 20
**Page:** 1

<div class="post-metadata">

### Author: ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)
#### Post date: [November 25, 2018, 8:10pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/1 "2018-11-25T20:10:16Z")

</div>

Apparently my registry is dirty; how should I clean it?

```julia
Julia-1.0.2> Pkg.update()
  Updating registry at `C:\Users\plowman\.julia\registries\General`
┌ Warning: Some registries failed to update:
│ — `C:\Users\plowman\.julia\registries\General` — registry dirty
└ @ Pkg.API C:\cygwin\home\Administrator\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.0\Pkg\src\API.jl:157
 Resolving package versions...
  Updating `C:\Users\plowman\.julia\environments\v1.0\Project.toml`
 [no changes]
  Updating `C:\Users\plowman\.julia\environments\v1.0\Manifest.toml`
 [no changes]

```

---

<div class="post-metadata">

### Author: ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)
#### Post date: [November 25, 2018, 9:04pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/2 "2018-11-25T21:04:00Z")

</div>

You can remove `~/.julia/registires/General` and it will be reinstalled. Before you do it would be interesting to see the output of `git status` in that folder to understand why it became dirty.

---

<div class="post-metadata">

### Author: ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)
#### Post date: [November 25, 2018, 9:39pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/3 "2018-11-25T21:39:35Z")

</div>

OK Thank you.

Is this the output you meant?

```julia
C:\Users\plowman\.julia\registries\General>git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes to be committed:
  (use "git reset HEAD <file>..." to unstage)

        deleted: Q/QRupdate/Compat.toml
        deleted: Q/QRupdate/Deps.toml
        deleted: Q/QRupdate/Package.toml
        deleted: Q/QRupdate/Versions.toml

```

---

<div class="post-metadata">

### Author: ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)
#### Post date: [November 25, 2018, 9:40pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/4 "2018-11-25T21:40:59Z")

</div>

Thanks, do you have any idea why those files have been deleted?

---

<div class="post-metadata">

### Author: ![ajkeller34](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ajkeller34/32/4416_2.png) [@ajkeller34](https://discourse.julialang.org/u/ajkeller34)
#### Post date: [November 25, 2018, 9:46pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/5 "2018-11-25T21:46:55Z")

</div>

The same exact problem happened to me after a package update, for what it’s worth. Deleting the General folder and updating again doesn’t resolve the issue (it’s dirty in the same way after updating).

---

<div class="post-metadata">

### Author: ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)
#### Post date: [November 25, 2018, 9:47pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/6 "2018-11-25T21:47:08Z")

</div>

> [@fredrikekre](#):
>
> do you have any idea why those files have been deleted?

Unfortunately not.

Somewhat embarrassingly, I have almost no understanding of things `git` and I don’t manually dabble there.  
I literally just use `Pkg.add()` and `Pkg.update()`.

Removing `~/.julia/registries/General` followed by `Pkg.update()` fixed the problem.  
Washed and clean!

Thanks!

---

<div class="post-metadata">

### Author: ![00vareladavid](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/00vareladavid/32/23521_2.png) [@00vareladavid](https://discourse.julialang.org/u/00vareladavid)
#### Post date: [November 25, 2018, 9:49pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/7 "2018-11-25T21:49:26Z")

</div>

Do you mean the `QRupdate` directory was removed? Or just some directory within `General`?

---

<div class="post-metadata">

### Author: ![ajkeller34](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ajkeller34/32/4416_2.png) [@ajkeller34](https://discourse.julialang.org/u/ajkeller34)
#### Post date: [November 25, 2018, 9:53pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/8 "2018-11-25T21:53:36Z")

</div>

same exact problem, the `QRupdate` directory. When I delete the General registry folder and try updating twice, the following happens:

```julia
(v1.0) pkg> up
   Cloning default registries into /Users/ajkeller/.julia/registries
   Cloning registry General from "https://github.com/JuliaRegistries/General.git"
 Resolving package versions...
  Updating `~/.julia/environments/v1.0/Project.toml`
 [no changes]
  Updating `~/.julia/environments/v1.0/Manifest.toml`
 [no changes]

(v1.0) pkg> up
  Updating registry at `~/.julia/registries/General`
┌ Warning: Some registries failed to update:
│ — `~/.julia/registries/General` — registry dirty
└ @ Pkg.API /Users/osx/buildbot/slave/package_osx64/build/usr/share/julia/stdlib/v1.0/Pkg/src/API.jl:157
 Resolving package versions...
  Updating `~/.julia/environments/v1.0/Project.toml`
 [no changes]
  Updating `~/.julia/environments/v1.0/Manifest.toml`
 [no changes]

```

---

<div class="post-metadata">

### Author: ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)
#### Post date: [November 25, 2018, 11:53pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/9 "2018-11-25T23:53:47Z")

</div>

I had the same issue as well. I tried fixing the git repo, but couldn’t for some reason. The solution helped.

However, as soon as I need it again it gets dirty once again…

I am on `macOS v10.14.1` and `Julia v1.0.2`

---

<div class="post-metadata">

### Author: ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)
#### Post date: [November 26, 2018, 12:42am UTC](https://discourse.julialang.org/t/registry-dirty/17989/10 "2018-11-26T00:42:04Z")

</div>

The problems seem to be that there are two directories with different casing: `QRUpdate` and `QRupdate`: [General/Q at master · JuliaRegistries/General · GitHub](https://github.com/JuliaRegistries/General/tree/master/Q).

A new package was registered (`QRUpdate`) while there was an existing `QRupdate` package already existing. This seems to have broken the registry.

---

<div class="post-metadata">

### Author: ![00vareladavid](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/00vareladavid/32/23521_2.png) [@00vareladavid](https://discourse.julialang.org/u/00vareladavid)
#### Post date: [November 26, 2018, 12:53am UTC](https://discourse.julialang.org/t/registry-dirty/17989/11 "2018-11-26T00:53:58Z")

</div>

I guess because windows and mac filesystems are not case sensitive? Or so I read on the net…

---

<div class="post-metadata">

### Author: ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)
#### Post date: [November 26, 2018, 1:02am UTC](https://discourse.julialang.org/t/registry-dirty/17989/12 "2018-11-26T01:02:23Z")

</div>

Correct, this should not be allowed. Case-insensitive file systems cannot handle this. The commit on metadata that added a different case of the same name should be reverted and we should add a registration check preventing this.

---

<div class="post-metadata">

### Author: ![Nosferican](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/nosferican/32/9275_2.png) [@Nosferican](https://discourse.julialang.org/u/Nosferican)
#### Post date: [November 26, 2018, 5:07am UTC](https://discourse.julialang.org/t/registry-dirty/17989/13 "2018-11-26T05:07:07Z")

</div>

Shouldn’t that happen with the `UUID` being what determines the package and not the name? This is actually nice, since this is the first time in the registry where there are multiple packages “conflicting” (here is not even the actual same name). I asked shortly before stdlib/Pkg, but I think it is still relevant… The way the registry is set up it stores the files based on the name rather UUID so this could be problematic. Should it be resolved after dropping METADATA and METADATA compatible UUID?

---

<div class="post-metadata">

### Author: ![fredrikekre](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/fredrikekre/32/1688_2.png) [@fredrikekre](https://discourse.julialang.org/u/fredrikekre)
#### Post date: [November 26, 2018, 8:14am UTC](https://discourse.julialang.org/t/registry-dirty/17989/14 "2018-11-26T08:14:28Z")

</div>

> [@Nosferican](#):
>
> The way the registry is set up it stores the files based on the name rather UUID so this could be problematic.

No, its stored based on uuid: [https://github.com/JuliaRegistries/General/blob/bb6acaa33fa8f38203d393a6e3178c62cd799cb4/Registry.toml#L1830](https://github.com/JuliaRegistries/General/blob/bb6acaa33fa8f38203d393a6e3178c62cd799cb4/Registry.toml#L1830), this was (is) only a problem with the conversion script.

---

<div class="post-metadata">

### Author: ![swissr](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/swissr/32/208_2.png) [@swissr](https://discourse.julialang.org/u/swissr)
#### Post date: [November 28, 2018, 6:57pm UTC](https://discourse.julialang.org/t/registry-dirty/17989/15 "2018-11-28T18:57:36Z")

</div>

It works again. Thanks for fixing.

---

<div class="post-metadata">

### Author: ![OlivierHnt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/olivierhnt/32/6227_2.png) [@OlivierHnt](https://discourse.julialang.org/u/OlivierHnt)
#### Post date: [December 8, 2018, 1:46am UTC](https://discourse.julialang.org/t/registry-dirty/17989/16 "2018-12-08T01:46:38Z")

</div>

I am experiencing the same issue. However, if I delete the folder General, Julia (v1.0.0) does not reinstall it.  
In `registries/General/Q` I do have `QRUpdate` instead of `QRupdate` as I understand from the discussion. Manually renaming the folder does not help.  
Any idea how to reset the General folder (or simply the QRUpdate one) ? Equivalently, how to ask Julia to re-install General after removing it ?

---

<div class="post-metadata">

### Author: ![greg\_plowman](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/greg_plowman/32/8100_2.png) [@greg\_plowman](https://discourse.julialang.org/u/greg_plowman)
#### Post date: [December 8, 2018, 1:49am UTC](https://discourse.julialang.org/t/registry-dirty/17989/17 "2018-12-08T01:49:37Z")

</div>

Have you tried with latest release Julia v1.0.2 ?

---

<div class="post-metadata">

### Author: ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)
#### Post date: [December 8, 2018, 1:49am UTC](https://discourse.julialang.org/t/registry-dirty/17989/18 "2018-12-08T01:49:45Z")

</div>

Update to 1.0.2 or delete the whole `registries` folder.

---

<div class="post-metadata">

### Author: ![OlivierHnt](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/olivierhnt/32/6227_2.png) [@OlivierHnt](https://discourse.julialang.org/u/OlivierHnt)
#### Post date: [December 8, 2018, 1:54am UTC](https://discourse.julialang.org/t/registry-dirty/17989/19 "2018-12-08T01:54:47Z")

</div>

@greg_plowman No I did not want to upgrade just yet. I feel that if I do it now, by a year from now I will have many Julia installed and I am not sure how that works.

@kristoffer.carlsson Fantastic, that worked. Thank you very much! What a headache that was for me 🙂

---

<div class="post-metadata">

### Author: ![kristoffer.carlsson](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/kristoffer.carlsson/32/22_2.png) [@kristoffer.carlsson](https://discourse.julialang.org/u/kristoffer.carlsson)
#### Post date: [December 8, 2018, 1:57am UTC](https://discourse.julialang.org/t/registry-dirty/17989/20 "2018-12-08T01:57:29Z")

</div>

> [@OlivierHnt](#):
>
> I feel that if I do it now, by a year from now I will have many Julia installed and I am not sure how that works.

Upgrading is highly recommended, it contains many bug fixes. You can just uninstall your old julia and install the new one.

[Next page](https://discourse.julialang.org/t/registry-dirty/17989.md?page=2)
