google / cdep

CDep is a decentralized native package dependency manager with a focus on Android. Runs on Windows, Linux, and MacOS.
Apache License 2.0
98 stars 22 forks source link

cdep crashes with the given instructions and default configurations. #28

Closed pjmlp closed 7 years ago

pjmlp commented 7 years ago

I just tried to use cdep, but it initial experience on Windows is that it doesn't work at all.

  1. Cloned the repository as described on the readme, SHA-1: ab6e03391d339dd75d90ccce55603675986b00ab

  2. Opened Android Studio 2.3.3. and created an empty activity with C++ support enabled

  3. Executed the ..\cdep-redist\cdep wrapper step as described on the instructions

  4. Inside Android Studio, uncommented the line - compile: com.github.jomof:boost:1.0.63-rev10 on the file cdep.yml

  5. It failed with a stack trace

C:\Users\.............\Downloads\MyApplication>.\cdep
Downloading https://github.com/jomof/boost/releases/download/1.0.63-rev10/cdep-manifest.yml
FAILURE (4cb6eaf): Cannot create property=android for JavaBean=io.cdep.cdep.yml.cdepmanifest.CDepManifestYml@1b26f7b2
 in 'reader', line 1, column 1:
    coordinate:
    ^
No suitable constructor with 1 arguments found for class io.cdep.cdep.yml.cdepmanifest.Android
 in 'reader', line 6, column 3:
      - file: boost_1_63_0.zip
      ^

FAILURE (152f827): groupId '' from manifest did not agree with github url https://github.com/jomof/boost/releases/download/1.0.63-rev10/cdep-manifest.
yml
FAILURE (136e12f): version '' from manifest did not agree with version 1.0.63-rev10 github url https://github.com/jomof/boost/releases/download/1.0.63
-rev10/cdep-manifest.yml
FAILURE (6af7405): Manifest was missing coordinate
FAILURE (8313000): Manifest was missing coordinate.groupId
FAILURE (b495b50): Manifest was missing coordinate.artifactId
FAILURE (31ca81f): Manifest was missing coordinate.version
FAILURE (fa75282): Package ':' has malformed version, expected major.minor.point[-tweak] but there were no dots
FAILURE (71b3ede): Package ':' does not contain any files
  1. Modified cdep.yml to use - compile: com.github.jomof:sqlite:3.16.2-rev51 instead, like on the instructions

  2. It failed with another stack trace

Generating C:\Users\.........\Downloads\MyApplication\.\.cdep\modules\cdep-dependencies-config.cmake
9 errors, exiting
C:\Users\..........\Downloads\MyApplication>.\cdep
[B@52feb982mapping values are not allowed here
 in 'reader', line 11, column 15:
    - coordinate: :
                  ^

        at org.yaml.snakeyaml.scanner.ScannerImpl.fetchValue(ScannerImpl.java:871)
        at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:360)
        at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:226)
        at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingValue.produce(ParserImpl.java:585)
        at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:157)
        at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:147)
        at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:132)
        at org.yaml.snakeyaml.composer.Composer.composeValueNode(Composer.java:246)
        at org.yaml.snakeyaml.composer.Composer.composeMappingChildren(Composer.java:237)
        at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:225)
        at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:155)
        at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.java:199)
        at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:153)
        at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122)
        at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
        at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:120)
        at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:450)
        at org.yaml.snakeyaml.Yaml.load(Yaml.java:381)
        at io.cdep.cdep.utils.CDepSHA256Utils.convertStringToCDepSHA256(CDepSHA256Utils.java:32)
        at io.cdep.cdep.generator.GeneratorEnvironment.readCDepSHA256File(GeneratorEnvironment.java:222)
        at io.cdep.CDep.handleGenerateScript(CDep.java:588)
        at io.cdep.CDep.goNoScope(CDep.java:186)
        at io.cdep.CDep.go(CDep.java:125)
        at io.cdep.CDep.main(CDep.java:77)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at io.cdep.bootstrap.Bootstrap.go(Bootstrap.java:55)
        at io.cdep.bootstrap.Bootstrap.main(Bootstrap.java:34)
jomof commented 7 years ago

That's bad. Looking now

On Wed, Jul 12, 2017 at 11:02 PM, pjmlp notifications@github.com wrote:

I just tried to use cdep, but it initial experience on Windows is that it doesn't work at all.

1.

Cloned the repository as described on the readme, SHA-1: ab6e03391d339dd75d90ccce55603675986b00ab 2.

Opened Android Studio 2.3.3. and created an empty activity with C++ support enabled 3.

Executed the ..\cdep-redist\cdep wrapper step as described on the instructions 4.

Inside Android Studio, uncommented the line - compile: com.github.jomof:boost:1.0.63-rev10 on the file cdep.yml 5.

It failed with a stack trace

C:\Users.............\Downloads\MyApplication>.\cdep Downloading https://github.com/jomof/boost/releases/download/1.0.63-rev10/cdep-manifest.yml FAILURE (4cb6eaf): Cannot create property=android for JavaBean=io.cdep.cdep.yml.cdepmanifest.CDepManifestYml@1b26f7b2 in 'reader', line 1, column 1: coordinate: ^ No suitable constructor with 1 arguments found for class io.cdep.cdep.yml.cdepmanifest.Android in 'reader', line 6, column 3:

  • file: boost_1_63_0.zip ^

FAILURE (152f827): groupId '' from manifest did not agree with github url https://github.com/jomof/boost/releases/download/1.0.63-rev10/cdep-manifest. yml FAILURE (136e12f): version '' from manifest did not agree with version 1.0.63-rev10 github url https://github.com/jomof/boost/releases/download/1.0.63 -rev10/cdep-manifest.yml https://github.com/jomof/boost/releases/download/1.0.63-rev10/cdep-manifest.yml FAILURE (6af7405): Manifest was missing coordinate FAILURE (8313000): Manifest was missing coordinate.groupId FAILURE (b495b50): Manifest was missing coordinate.artifactId FAILURE (31ca81f): Manifest was missing coordinate.version FAILURE (fa75282): Package ':' has malformed version, expected major.minor.point[-tweak] but there were no dots FAILURE (71b3ede): Package ':' does not contain any files

1.

Modified cdep.yml to use - compile: com.github.jomof:sqlite:3.16.2-rev51 instead, like on the instructions 2.

It failed with another stack trace

Generating C:\Users\811069\Downloads\MyApplication..cdep\modules\cdep-dependencies-config.cmake 9 errors, exiting C:\Users\811069\Downloads\MyApplication>.\cdep [B@52feb982mapping values are not allowed here in 'reader', line 11, column 15:

  • coordinate: : ^

    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchValue(ScannerImpl.java:871)
    at org.yaml.snakeyaml.scanner.ScannerImpl.fetchMoreTokens(ScannerImpl.java:360)
    at org.yaml.snakeyaml.scanner.ScannerImpl.checkToken(ScannerImpl.java:226)
    at org.yaml.snakeyaml.parser.ParserImpl$ParseBlockMappingValue.produce(ParserImpl.java:585)
    at org.yaml.snakeyaml.parser.ParserImpl.peekEvent(ParserImpl.java:157)
    at org.yaml.snakeyaml.parser.ParserImpl.checkEvent(ParserImpl.java:147)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:132)
    at org.yaml.snakeyaml.composer.Composer.composeValueNode(Composer.java:246)
    at org.yaml.snakeyaml.composer.Composer.composeMappingChildren(Composer.java:237)
    at org.yaml.snakeyaml.composer.Composer.composeMappingNode(Composer.java:225)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:155)
    at org.yaml.snakeyaml.composer.Composer.composeSequenceNode(Composer.java:199)
    at org.yaml.snakeyaml.composer.Composer.composeNode(Composer.java:153)
    at org.yaml.snakeyaml.composer.Composer.composeDocument(Composer.java:122)
    at org.yaml.snakeyaml.composer.Composer.getSingleNode(Composer.java:105)
    at org.yaml.snakeyaml.constructor.BaseConstructor.getSingleData(BaseConstructor.java:120)
    at org.yaml.snakeyaml.Yaml.loadFromReader(Yaml.java:450)
    at org.yaml.snakeyaml.Yaml.load(Yaml.java:381)
    at io.cdep.cdep.utils.CDepSHA256Utils.convertStringToCDepSHA256(CDepSHA256Utils.java:32)
    at io.cdep.cdep.generator.GeneratorEnvironment.readCDepSHA256File(GeneratorEnvironment.java:222)
    at io.cdep.CDep.handleGenerateScript(CDep.java:588)
    at io.cdep.CDep.goNoScope(CDep.java:186)
    at io.cdep.CDep.go(CDep.java:125)
    at io.cdep.CDep.main(CDep.java:77)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at io.cdep.bootstrap.Bootstrap.go(Bootstrap.java:55)
    at io.cdep.bootstrap.Bootstrap.main(Bootstrap.java:34)

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/google/cdep/issues/28, or mute the thread https://github.com/notifications/unsubscribe-auth/AE6z9Dir5QMVuGrtq1YegzSWPvmvKPIKks5sNbLigaJpZM4OWiba .

jomof commented 7 years ago

The cdep-redist project is fixed now. You can fix the second stack trace in your existing project by deleting cdep.sha256. I'm leaving the bug opened while I investigate the cause of the second stack trace.

jomof commented 7 years ago

The second callstack is because a wrong SHA256 file was recorded after the first failure. After this, cdep won't accept packages until cdep.sha256 is deleted manually. I'm fixing the issue by not writing a SHA256 if there has been any earlier errors .

jomof commented 7 years ago

I fixed the issue I mentioned and release CDep 0.8.14.

pjmlp commented 7 years ago

Tested on my side, also working. Thanks.

jomof commented 7 years ago

@pjmlp thank you for reporting the bug. Let me know if you have other issues, questions, or feature suggestions.