dart-lang / pub

The pub command line tool
https://dart.dev/tools/pub/cmd
BSD 3-Clause "New" or "Revised" License
1.04k stars 224 forks source link

Problem finding certain dependency when building in CI (Gitlab and Github) #3601

Closed mark-nicepants closed 1 year ago

mark-nicepants commented 1 year ago

Environment

Problem

When doing CI/CD tasks my project fails to build/analyse. Locally there is no problem what so ever. The problem seems to be with the three_dart library. All references to the package seems to be broken in CI. I've also tried to use the hosted pub.dev version (in stead of the fork the yml is currently on) but same error there.

pubspec.yaml contents ```yaml name: example description: A new Flutter project. publish_to: "none" version: 1.0.0+1 environment: sdk: ">=2.18.0 <3.0.0" flutter: ">=3.3.0 <3.4.0" dependencies: alice_lightweight: ^3.0.0 anchored_popups: ^0.1.0 apn_cache: ^0.1.0 cached_network_image: ^3.2.1 clock: ^1.1.0 collection: ^1.16.0 connectivity_plus: ^2.1.0 dartz: ^0.10.1 equatable: ^2.0.3 expandable: ^5.0.1 firebase_analytics: ^9.3.3 firebase_core: ^1.19.0 flutter: sdk: flutter flutter_dotenv: ^5.0.2 flutter_hooks: ^0.18.5+1 flutter_localizations: sdk: flutter flutter_loggy: ^2.0.1 flutter_riverpod: ^2.0.0 flutter_secure_storage: ^6.0.0 fluttertoast: ^8.0.9 gap: ^2.0.0 get_it: ^7.2.0 go_router: ^5.0.0 hooks_riverpod: ^2.0.0 intl: ^0.17.0 latlong2: ^0.8.1 meta: ^1.8.0 mqtt_client: ^9.7.0 process_run: ^0.12.3+1 quiver: ^3.0.1 retrofit: ^3.0.0 sentry_flutter: ^6.6.1 shared_preferences: ^2.0.11 storybook_flutter: ^0.11.0+1 three_dart: # Move from fork to original when this PR is merged and published on pub.dev => https://github.com/wasabia/three_dart/pull/92 git: https://github.com/mark-apn/three_dart.git three_dart_jsm: git: url: https://github.com/mark-apn/three_dart_jsm.git ref: b5dcc8e9 timeago: ^3.2.2 url_strategy: ^0.2.0 uuid: ^3.0.6 dev_dependencies: apn_lints: ^0.0.1 build_runner: ^2.1.2 custom_lint: ^0.0.9 faker: ^2.0.0 flutter_lints: ^2.0.1 flutter_test: sdk: flutter golden_toolkit: ^0.13.0 json_to_model: ^3.0.0 network_image_mock: ^2.1.1 retrofit_generator: ^4.0.0 flutter: generate: true uses-material-design: true assets: - .secrets - .env.local - .env.testing - .env.firebase - .env.develop - .env.production - assets/img/ - assets/obj/ - assets/shaders/ fonts: - family: Inter fonts: - asset: assets/fonts/Inter-Regular.ttf weight: 400 - asset: assets/fonts/Inter-Medium.ttf weight: 500 - asset: assets/fonts/Inter-Bold.ttf weight: 700 - family: SpaceGrotesk fonts: - asset: assets/fonts/SpaceGrotesk-Regular.ttf weight: 400 - asset: assets/fonts/SpaceGrotesk-Medium.ttf weight: 500 - asset: assets/fonts/SpaceGrotesk-Bold.ttf weight: 700 json_to_model: source: assets/jsons/ output: lib/data/data/models/ create_factories: true factory_output: test/data/models flutter_gen: output: ./lib/ui/assets/ line_length: 120 integrations: flutter_svg: true colors: inputs: - ./assets/colors.xml ```

Expected behavior

I expected the same behaviour as we see locally.

Actual behavior

the flutter pub get command works, but after that the flutter analyze and flutter test commands fail to resolve all references to the three_dart package.

Example of failing to find is on Gitlab: image

Example of error in Github (original action of the published pub.dev) (source: https://github.com/wasabia/three_dart/actions/runs/3235032227/jobs/5298903134) image

mark-nicepants commented 1 year ago

Fixed. Was caused by filenames that were capitalised. After renaming them to be lowercase, Linux in CI could also find all file references.