{"action":"created","issue":{"url":"https://api.github.com/repos/LLNL/spack/issues/2094","repository_url":"https://api.github.com/repos/LLNL/spack","labels_url":"https://api.github.com/repos/LLNL/spack/issues/2094/labels{/name}","comments_url":"https://api.github.com/repos/LLNL/spack/issues/2094/comments","events_url":"https://api.github.com/repos/LLNL/spack/issues/2094/events","html_url":"https://github.com/LLNL/spack/issues/2094","id":184692261,"number":2094,"title":"Problems with Success: 1000 Packages!","user":{"login":"citibeth","id":1924215,"avatar_url":"https://avatars.githubusercontent.com/u/1924215?v=3","gravatar_id":"","url":"https://api.github.com/users/citibeth","html_url":"https://github.com/citibeth","followers_url":"https://api.github.com/users/citibeth/followers","following_url":"https://api.github.com/users/citibeth/following{/other_user}","gists_url":"https://api.github.com/users/citibeth/gists{/gist_id}","starred_url":"https://api.github.com/users/citibeth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/citibeth/subscriptions","organizations_url":"https://api.github.com/users/citibeth/orgs","repos_url":"https://api.github.com/users/citibeth/repos","events_url":"https://api.github.com/users/citibeth/events{/privacy}","received_events_url":"https://api.github.com/users/citibeth/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/LLNL/spack/labels/discussion","name":"discussion","color":"a87f5a"},{"url":"https://api.github.com/repos/LLNL/spack/labels/proposal","name":"proposal","color":"0e8a16"},{"url":"https://api.github.com/repos/LLNL/spack/labels/refactoring","name":"refactoring","color":"f28f2a"},{"url":"https://api.github.com/repos/LLNL/spack/labels/revisit","name":"revisit","color":"b60205"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2016-10-23T14:09:57Z","updated_at":"2016-10-25T18:22:30Z","closed_at":null,"body":"We recently passed the 1000-package mark.  Yoohoo!  Of course, growth always comes with problems.  In this case, the problem is GitHub doesn't like directories with >1000 files.  See, for example:\r\n\r\nhttps://github.com/LLNL/spack/tree/develop/var/spack/repos/builtin/packages\r\n\r\nMy suggestion is we allow for packages to exist in sub-directories of `packages` as well as at the top level; Spack should basically merge all the directories together when looking for packages.  This gives us the most flexibility in how we choose to arrange packages in directories.  For example, we could:\r\n\r\n1. Arrange by first letter (aka EasyBuild).  We'd have packages/a, packages/b, ..., packages/z and then put each package in the appropriate directory.\r\n\r\n2. Leave everything in the main directory, except for certain subsystems.  We'd have subdirectories for `py/`, `r/`, `x/`, `lua/`, etc.\r\n\r\n3. Arrange by \"topic\": utilities, astronomy, etc.\r\n\r\nI like (2) first and (1) and (3) next, in that order.  I dislike (3) because it's no longer obvious where to find a particular package (requires too many brain cells).  (1) is at least systematic.  But I think (2) will be not so hard, and will give us significant room to grow before any resulting directories reach 1000 files.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/LLNL/spack/issues/comments/256122919","html_url":"https://github.com/LLNL/spack/issues/2094#issuecomment-256122919","issue_url":"https://api.github.com/repos/LLNL/spack/issues/2094","id":256122919,"user":{"login":"goxberry","id":321479,"avatar_url":"https://avatars.githubusercontent.com/u/321479?v=3","gravatar_id":"","url":"https://api.github.com/users/goxberry","html_url":"https://github.com/goxberry","followers_url":"https://api.github.com/users/goxberry/followers","following_url":"https://api.github.com/users/goxberry/following{/other_user}","gists_url":"https://api.github.com/users/goxberry/gists{/gist_id}","starred_url":"https://api.github.com/users/goxberry/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/goxberry/subscriptions","organizations_url":"https://api.github.com/users/goxberry/orgs","repos_url":"https://api.github.com/users/goxberry/repos","events_url":"https://api.github.com/users/goxberry/events{/privacy}","received_events_url":"https://api.github.com/users/goxberry/received_events","type":"User","site_admin":false},"created_at":"2016-10-25T18:22:29Z","updated_at":"2016-10-25T18:22:29Z","body":"I agree with @citibeth's order of preference.\n\nIf spack has a directory with 1000+ files, an alternative is to direct them\nto use the file search feature of GitHub's web interface, triggered by\npressing the 't' key. I don't think the display limitation should force\ndirectory restructuring.\n\nIf the problem is really GitHub's interface, I'd rather users learn how to\nuse that interface better than impose additional hierarchy in the repo\ndirectory tree, especially when spack has a pretty deep directory tree as\nit is. spack/var/spack/repos/builtin/packages/$PACKAGE/package.py is\nalready 8 levels deep.\n\nOn Monday, October 24, 2016, Javier <notifications@github.com> wrote:\n\n> I agree with @davydden <https://github.com/davydden>, for instance Python\n> and R packages would be easy to find and manage in the py/ and r/ folder\n> and even more intuitive due to the used name for these kind of packages\n> (py-numpy, r-httpuv, r-shiny ...). Even though in the (1) system this is\n> also possible I'd prefer (2) for the sake of clarity.\n>\n> —\n> You are receiving this because you are subscribed to this thread.\n> Reply to this email directly, view it on GitHub\n> <https://github.com/LLNL/spack/issues/2094#issuecomment-255678794>, or mute\n> the thread\n> <https://github.com/notifications/unsubscribe-auth/AATnx7n7fqgWikftFvgU0hg5eGF3t0kdks5q3GxYgaJpZM4KeJFe>\n> .\n>\n\n\n-- \nGeoffrey Oxberry, Ph.D., E.I.T.\ngoxberry@gmail.com\n"}}
{"actor":{"display_login":"goxberry"}}