atom / atom.io

🌐 A place for feedback on the atom.io website and package API
158 stars 98 forks source link

Block select package issues error 400 - Bad request #209

Open freebrowser1 opened 3 years ago

freebrowser1 commented 3 years ago

Prerequisites

Description

When installing the 'block select' add-on a 400 Bad Request error is issued. It is about this: https://atom.io/packages/block-select.

Steps to Reproduce

  1. Go to Setting => Install
  2. Search 'Block-select'
  3. 'block-select' appears, click on Install

Expected behavior: It must install the add-on.

Actual behavior:

This message appears in red:

Installing “block-select@1.0.0” failed.Hide output…

npm ERR! code E400 npm ERR! 400 Bad Request - GET https://www.atom.io/api/packages/block-select/versions/1.0.0/tarball

npm ERR! A complete log of this run can be found in: npm ERR! /Users/klaas/.atom/.apm/_logs/2021-01-27T20_11_46015Z-debug.log

It is always reproducible.

Versions

~/scratch % atom --version Atom : 1.54.0 Electron: 6.1.12 Chrome : 76.0.3809.146 Node : 12.4.0

~/scratch % apm --version apm 2.5.2 npm 6.14.8 node 12.4.0 x64 atom 1.54.0 python 2.7.17 git 2.24.3

Additional Information

OS: macOS BigSur 11.1 (and it occurred in macOS versions 11.0, and 15.x (Catalina) as well).

sadick254 commented 3 years ago

Does 400 - Bad request only happen when installing block-select?

Aerijo commented 3 years ago

That package's GitHub repo has been deleted or made private. Atomio only acts as a wrapper, it depends on the repo existing for the actual package contents.

freebrowser1 commented 3 years ago

Does 400 - Bad request only happen when installing block-select? No, it also does when I pass the URL to wget.

But why does Atom still list the package when it is deleted ?

Aerijo commented 3 years ago

The package has not been deleted, merely its repo has.

By which I mean atom.io has a specific method to delete a package from its registry, which is not tied to the repo itself. This is useful so you don't accidentally delete your package if you wanted to temporarily make the repo private, or deleted the repo with the intent to recreate it. The unfortunate thing here is that atom.io doesn't keep a copy of the released repo itself, so it can't retrieve these contents when the repo is unavailable.

It's possible some kind of "timeout" could be implemented, where packages with inaccessible repos are automatically deleted after X days of no public access, but that isn't supported currently.

SvenBunge commented 2 years ago

I have still(?) this issue. Can I assume the package is dead?