NativeScript / NativeScript/nativescript-cli

Invalid `Podfile` file: syntax error, unexpected keyword_end

Aperta
#4,760 4 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

bug build CocoaPods
Lingua principale
JavaScript
Stelle
1.1k
Fork
204
Merge medio
1g 9h
PR unite (30g)
8

Descrizione

Which platform(s) does your issue occur on?
  • iOS
Please, provide the following version numbers that your issue occurs with:
  • CLI: 5.4.2
  • Cross-platform modules: 5.0.0
  • Runtime(s): tns-ios: 5.4.2
  • Plugins (the demo app created by running npm run postclone):
  "dependencies": {
    "nativescript-theme-core": "~1.0.4",
    "nativescript-twilio-chat": "file:../src",
    "tns-core-modules": "~5.4.0"
  },
  "devDependencies": {
    "nativescript-dev-typescript": "~0.10.0",
    "nativescript-dev-webpack": "~0.24.0"
  },
Please, tell us how to recreate the issue in as much detail as possible.
  • sudo gem install cocoapods (if not already installed)
  • mkdir plugin-test
  • cd plugin-test
  • git clone https://github.com/NativeScript/nativescript-plugin-seed _plugins/nativescript-version-number
  • cd _plugins/nativescript-version-number/src
  • npm run postclone
  • I entered twilio-chat for the plugin name and chose defaults (create a demo TypeScript app)
  • create the following Podfile in _plugins/nativescript-version-number/src/platforms/ios (as per Twilio Programable Chat docs)
source 'https://github.com/CocoaPods/Specs'

target 'MyTarget' do
  pod 'TwilioChatClient', '~> 2.4.2'
end
  • replace MyTarget with demo
  • in 2 terminal windows, both in _plugins/nativescript-version-number/src, run:
  • npm run plugin.tscwatch
  • npm run demo.ios

Result: [!] Invalid 'Podfile' file: syntax error, unexpected keyword_end, expecting end-of-input.
The generated Podfile (_plugins/nativescript-version-number/demo/platforms/ios/Podfile) looks like this:

use_frameworks!

target "demo" do
end

end

# Begin Podfile - /www/plugin-test/_plugins/nativescript-version-number/demo/node_modules/nativescript-twilio-chat/platforms/ios/Podfile
source 'https://github.com/CocoaPods/Specs'

target 'demo' do
  pod 'TwilioChatClient', '~> 2.4.2'
end

# End Podfile
end

Removing the end in my Podfile, I still get the same error (and just one less end in the resulting Podfile).
At one point I even got a Duplicate target "demo" error, so I even tried removing the line target 'demo' do line from my Podfile, but still no luck, still got the [!] Invalid 'Podfile' file: syntax error, unexpected keyword_end, expecting end-of-input. error.
Even if I delete all content from my Podfile, to have it empty, I still get a bad resulting Podfile:

use_frameworks!

target "demo" do
end

end

# Begin Podfile - /www/plugin-testt/_plugins/nativescript-version-number/demo/node_modules/nativescript-twilio-chat/platforms/ios/Podfile

# End Podfile
end

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia riproducendo il problema in _plugins/nativescript-version-number/src/platforms/ios/Podfile e confrontalo con il demo/platforms/ios/Podfile generato. Esegui npm run plugin.tscwatch e npm run demo.ios, quindi traccia il modo in cui il Podfile del plugin viene combinato con il target demo. Il lavoro è completato quando il Podfile generato contiene blocchi target bilanciati e il comando demo iOS termina senza l'errore di sintassi.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
javascript
Ambito
cli, mobile-dev
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
42/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.