APM Содержимое заголовка содержит недопустимые символы - PullRequest
0 голосов
/ 14 декабря 2018

Я пытаюсь опубликовать незначительное обновление для пакета Atom и продолжаю получать «Содержимое заголовка содержит недопустимые символы»

Что я сделал: клонировал репозиторий, установил удаленную ветвь, извлек ветки,тянуть контент.изменить вещи.изменить версию в package.json.мерзавец добавить.мерзавец совершить.git push.

и затем я использовал apm publish minor.

Я продолжаю получать эту досадную ошибку, и я не могу найти что-либо об этом в Интернете.Я даже не знаю, как получить более подробную информацию, что такое заголовок?это package.json?

так выглядит package.json по умолчанию для пакетов атомов:

{
  "name": "my-test-package",
  "main": "./lib/my-test-package",
  "version": "0.0.0",
  "description": "A short description of your package",
  "keywords": [
  ],
  "activationCommands": {
    "atom-workspace": "my-test-package:toggle"
  },
  "repository": "https://github.com/atom/my-test-package",
  "license": "MIT",
  "engines": {
    "atom": ">=1.0.0 <2.0.0"
  },
  "dependencies": {
  }
}

единственное, что я здесь изменил, это 2-я цифра от версии.

1 Ответ

0 голосов
/ 06 мая 2019

Этот вопрос сейчас довольно старый, но он по-прежнему один из лучших результатов для этой проблемы - поэтому я собираюсь добавить свое решение.

TLDR: Возможно, вы случайно добавили недопустимый символ (перевод строки и т. Д.) В свой токен аутентификации.Вы можете исправить это следующим образом:

  1. Удалите старый токен аутентификации из любого набора ключей, используемого вашей ОС.В Windows 10 это находится в Панели управления \ Учетные записи пользователей \ Диспетчер учетных данных.
  2. Команда 'apm publish minor' должна повторно запросить ваш токен аутентификации.Когда это произойдет, нажмите Backspace несколько раз, а затем повторно введите токен.Позаботьтесь о том, чтобы в конце вашего токена не было невидимых персонажей.

И это все - ваш пакет должен быть опубликован!


Длинная версия:

Когда apm publish обнаруживает проблему с вашим package.jsonфайл выдаст Ошибка синтаксического анализа файла package.json: и даст вам место для плохого токена / символа.Содержимое заголовка, которое в этом случае терпит неудачу, отправляется до фактического json и включает в себя такие вещи, как ваш токен аутентификации.

В общем, то, что будет нарушено в этом заголовке, это то, что вы изменили - токен аутентификации.Когда неожиданный символ (обычно невидимый символ) добавляется в ваш токен, это прерывает обработку этого заголовка pre-json.И так как ваш компьютер услужливо сохранил этот сломанный токен в связке ключей, вы будете бесконечно зависать, получая эту загадочную ошибку.

...