Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Uninstallable packages on MELPA #2824

Closed
swsnr opened this issue Jun 1, 2015 · 19 comments
Closed

Uninstallable packages on MELPA #2824

swsnr opened this issue Jun 1, 2015 · 19 comments
Labels

Comments

@swsnr
Copy link
Contributor

swsnr commented Jun 1, 2015

I just noticed Emacs 25.1 lists some MELPA packages as incompat, because their dependencies are uninstallable:

Uninstallable dependencies

For some of these packages dependencies are missing entirely. kibit-mode for instance depends on mode-compile which is neither built-in, nor in GNU ELPA, nor in MELPA itself—didn't look at Marmalade, but I don't think that MELPA packages should depend on Marmalade packages anyway.

Some other packages just depend on unavailable versions of existing packages: flymake-go has a dependency on Flymake 0.4.x, but the built-in version is just 0.3. I have no idea where 0.4 comes from—again, probably Marmalade.

In either case, Emacs will refuse to install these packages.

@milkypostman
Copy link
Member

i wonder if now they just say incompat but they would always work before?
we have so many packages now it's not a surprise, but at the same time if
no one is complaining i'm not sure of the issue.

did you try installing? did it stop you?

On Mon, Jun 1, 2015 at 7:43 AM Sebastian Wiesner notifications@github.com
wrote:

I just noticed Emacs 25.1 lists some MELPA packages as incompat, because
their dependencies are uninstallable:

[image: Uninstallable dependencies]
https://cloud.githubusercontent.com/assets/224922/7915220/758e4fd2-087c-11e5-8ece-f59d67992ca5.png

For some of these packages dependencies are missing entirely. kibit-mode
for instance depends on mode-compile which is neither built-in, nor in
GNU ELPA, nor in MELPA itself—didn't look at Marmalade, but I don't think
that MELPA packages should depend on Marmalade packages anyway.

Some other packages just depend on unavailable versions of existing
packages: flymake-go has a dependency on Flymake 0.4.x, but the built-in
version is just 0.3. I have no idea where 0.4 comes from—again, probably
Marmalade.

In either case, Emacs will refuse to install these packages.


Reply to this email directly or view it on GitHub
#2824.

@swsnr
Copy link
Contributor Author

swsnr commented Jun 3, 2015

You can't even mark these packages for installation in the package list. If you try to install them explicitly with M-x package-install you'll get an error during dependency resolution, before Emacs even starts to install anything. And even before Emacs 25, these packages would have failed during installation and during package activation, meaning that they were unusable in either way.

I doubt that any of these packages worked before within MELPA—at best, they worked by “accident”, because users also had Marmalade in their package-archives. At least, Marmalade is apparently where mode-compile and this strange flymake version come from—these packages exist in Marmalade.

But as I said, I don't think that MELPA packages should depend on Marmalade packages, and I doubt that many MELPA users actually have Marmalade in their package-archives.

IMHO, these packages should be removed from MELPA.

@milkypostman
Copy link
Member

i agree. ok, so maybe I should put this on my todo and remove these
packages. steve is moving or some such so i'll follow up with this tomorrow.

On Wed, Jun 3, 2015 at 12:58 AM Sebastian Wiesner notifications@github.com
wrote:

You can't even mark these packages for installation in the package list.
If you try to install them explicitly with M-x package-install you'll get
an error during dependency resolution, before Emacs even starts to install
anything.

I doubt that any of these packages worked before within MELPA—at best,
they worked by “accident”, because users also had Marmalade in their
package-archives. At least, Marmalade is apparently where mode-compile
and this strange flymake version come from—these packages exist in
Marmalade.

But as I said, I don't think that MELPA packages should depend on
Marmalade packages, and I doubt that many MELPA users actually have
Marmalade in their package-archives.


Reply to this email directly or view it on GitHub
#2824 (comment)
.

@swsnr
Copy link
Contributor Author

swsnr commented Jun 3, 2015

No hurry. I guess we should wait for Steve's opinion on this matter anyway.

@purcell
Copy link
Member

purcell commented Jun 3, 2015 via email

@swsnr
Copy link
Contributor Author

swsnr commented Jun 3, 2015

@purcell My best wishes to you!

@milkypostman
Copy link
Member

as you can see I filed or commented on issues in each package.

I guess now I will wait to see which ones get fixed and we'll remove the packages that don't.

@purcell
Copy link
Member

purcell commented Jun 4, 2015

Ultimately I'd like "uninstallability" to be detected by flycheck-package, and then extracted into a package-lint which MELPA can use during the build process to produce a list of warnings/errors. Those could then be displayed on the package pages.

@offby1
Copy link

offby1 commented Jan 22, 2016

I'm seeing something similar, on Emacs 25.0.50 on RHEL5 (which is quite old). There are 490 entries, so I won't paste them all; but one of them is markdown, which I miss :-(

@purcell
Copy link
Member

purcell commented Jan 23, 2016

@offby1 490 entries marked as "Incompatible" in the package list? This sounds likely to be a separate issue you might want to file together with more info.

@yashi
Copy link
Contributor

yashi commented Jan 4, 2017

I see many more packages than listed above. It's less than 100 so I just past them here. The major broken dependency seems to be json-1.2. Is anyone seeing this?

  4clojure           20131014.1507 incompat   melpa      Open and evaluate 4clojure.com questions
  auto-auto-indent   20131106.1103 incompat   melpa      Indents code as you type
  btc-ticker         20151113.659  incompat   melpa      Shows latest bitcoin price
  butler             20150811.1708 incompat   melpa      Emacs client for Jenkins
  cake2              20140626.542  incompat   melpa      CakePHP2 Minor Mode
  crab               20150126.2137 incompat   melpa      WebSocket server to remotely control a browser
  cryptsy-public-api 20141008.528  incompat   melpa      Library for working with the Cryptsy public API
  dropbox            20130513.1537 incompat   melpa      Emacs backend for dropbox
  eclim              20170101.1436 incompat   melpa      An interface to the Eclipse IDE.
  ede-compdb         20150920.1333 incompat   melpa      Support for compilation database projects in EDE
  edit-color-stamp   20130529.1033 incompat   melpa      Edit a hex color stamp, using a QT or the internal color picker
  ein                20170103.1811 incompat   melpa      Emacs IPython Notebook
  elog               20160724.1555 incompat   melpa      logging library extended from logito
  emms-soundcloud    20131221.345  incompat   melpa      EMMS source for Soundcloud audio sharing platform
  erc-twitch         20160522.859  incompat   melpa      Support for Twitch emotes for ERC.
  floobits           20160804.1135 incompat   melpa      Floobits plugin for real-time collaborative editing
  flymake-perlcritic 20120328.114  incompat   melpa      Flymake handler for Perl to invoke Perl::Critic
  gnus-desktop-no... 20160210.247  incompat   melpa      Gnus Desktop Notification global minor mode
  grunt              20160316.828  incompat   melpa      Some glue to stick Emacs and Gruntfiles together
  hackernews         20160627.1651 incompat   melpa      Access the hackernews aggregator from Emacs
  haml-mode          20150508.2011 incompat   melpa      Major mode for editing Haml files
  haste              20141030.1334 incompat   melpa      Emacs client for hastebin (http://hastebin.com/about.md)
  hayoo              20140831.521  incompat   melpa      Query hayoo and show results in a tabulated buffer.
  helm-commandlinefu 20150610.2245 incompat   melpa      Search and browse commandlinefu.com from helm
  helm-hayoo         20151013.2351 incompat   melpa      Source and configured helm for searching hayoo
  hive               20131217.712  incompat   melpa      Hive SQL mode extension
  ido-gnus           20140216.846  incompat   melpa      Access gnus groups or servers using ido
  imgix              20141226.1332 incompat   melpa      Major mode for editing images in emacs via imgix
  ivs-edit           20140720.346  incompat   melpa      IVS (Ideographic Variation Sequence) editing tool
  jenkins            20160903.1556 incompat   melpa      Minimalistic Jenkins client for Emacs
  kite               20130201.1138 incompat   melpa      WebKit inspector front-end
  kodi-remote        20161126.1914 incompat   melpa      Remote Control for Kodi
  litecoin-ticker    20160611.1711 incompat   melpa      litecoin price in modeline
  matrix-client      20161004.1933 incompat   melpa      A minimal chat client for the Matrix.org RPC
  mocker             20150916.1854 incompat   melpa      mocking framework for emacs
  mote-mode          20160122.1629 incompat   melpa      Mote minor mode
  mpv                20150218.118  incompat   melpa      control mpv for easy note-taking
  msvc               20161221.558  incompat   melpa      Microsoft Visual C/C++ mode
  omnisharp          20160920.2343 incompat   melpa      Omnicompletion (intellisense) and more for C#
  org-dotemacs       20151119.1022 incompat   melpa      Store your emacs config as an org file, and choose which bits to load.
  org-drill-table    20140117.137  incompat   melpa      Generate drill cards from org tables
  org-webpage        20161030.100  incompat   melpa      A static site generator based on org mode.
  pushbullet         20140809.532  incompat   melpa      Emacs client for the PushBullet Android app
  python             0.25.2        incompat   gnu        Python's flying circus support for Emacs
  redpen-paragraph   20160625.350  incompat   melpa      RedPen interface.
  refheap            20140902.1402 incompat   melpa      A library for pasting to https://refheap.com
  relax              20131029.1434 incompat   melpa      For browsing and interacting with CouchDB
  rinari             20150708.2340 incompat   melpa      Rinari Is Not A Rails IDE
  rspec-mode         20161129.1525 incompat   melpa      Enhance ruby-mode for RSpec
  rtm                20160116.927  incompat   melpa      An elisp implementation of the Remember The Milk API
  ruby-additional    20161115.2259 incompat   melpa      ruby-mode extensions yet to be merged into Emacs
  ruby-refactor      20160214.850  incompat   melpa      A minor mode which presents various Ruby refactoring helpers.
  ruby-test-mode     20160930.9    incompat   melpa      Minor mode for Behaviour and Test Driven
  rudel              0.3.1         incompat   gnu        A collaborative editing framework for Emacs
  shift-text         20130831.955  incompat   melpa      Move the region in 4 directions, in a way similar to Eclipse's
  soundcloud         20150501.2026 incompat   melpa      a SoundCloud client for Emacs
  stripe-buffer      20141208.708  incompat   melpa      Use a different background for even and odd lines
  swagger-to-org     20160610.1756 incompat   melpa      Convert a swagger.json file into an org-mode file
  sx                 20161222.1205 incompat   melpa      StackExchange client. Ask and answer questions on Stack Overflow, Super User, and the likes
  telephone-line     20161105.840  incompat   melpa      Rewrite of Powerline
  tern               20161222.850  incompat   melpa      Tern-powered JavaScript integration
  undohist           20150315.542  incompat   melpa      Persistent undo history for GNU Emacs
  vertica            20131217.711  incompat   melpa      Vertica SQL mode extension
  xelb               0.12          incompat   gnu        X protocol Emacs Lisp Binding
  xkcd               20160419.430  incompat   melpa      View xkcd from Emacs
  

@milkypostman
Copy link
Member

Running 25.1.50.1 I don't see this issue.
Installing 25.1.1 I still don't see this issue.

is it consistently happening?

@milkypostman
Copy link
Member

i'm wondering if json package was broken for a few days? do you have any stable/repo settings that may be causing this?

@yashi
Copy link
Contributor

yashi commented Jan 4, 2017

Uga. It was my bad. Somehow my Emacs wasn't picking up built-in packages.
Sorry for the noise and thank you for you time, @milkypostman .

@syohex
Copy link
Contributor

syohex commented Jan 6, 2017

There is only one incompat package org-drill-table. It requires org-plus-contrib package which is only registered org elpa repository(http://orgmode.org/elpa.html)

@purcell
Copy link
Member

purcell commented Jan 7, 2017

There is only one incompat package org-drill-table. It requires org-plus-contrib package which is only registered org elpa repository(http://orgmode.org/elpa.html)

Yeah, that's probably okay, though the way org and org-contrib are published is pretty ugly IMO.

@marcecj
Copy link

marcecj commented May 27, 2017

I'm seeing this problem (using Emacs 25.2) with the ein package (Emacs IPython Notebook), which depends on websocket-1.7, but the only version available is 1.6 from gnu (I see now that the homepage given by ELPA is wrong, the source code mentions https://github.com/ahyatt/emacs-websocket, which is at version 1.7); it doesn't look like there's a built-in version.

Note that I am seeing this after upgrading to Emacs 25.2 and removing marmalade from my package-archives, leaving melpa-stable as the only addition to package-archives (it seems that marmalade stopped seeing upgrades a while (years?) ago, so I hadn't upgraded any packages in quite some time).

The full list of incompatible packages is a bit longer (57 in total), but other than ein (and maybe evil, which I've been meaning to try out) I see nothing that I personally care about.

@purcell
Copy link
Member

purcell commented May 28, 2017

@marcecj Perhaps file an issue on the websocket repo (https://github.com/ahyatt/emacs-websocket) and ask for a version tag to be applied?

@tarsius
Copy link
Member

tarsius commented Oct 4, 2017

If there still are new or old "uninstallable" packages, then we should open one or more new issues.

@tarsius tarsius closed this as completed Oct 4, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

8 participants