Comments (4)
Isn't that expected?
gem cleanup
will uninstall all old versions of gems, and in this case it removes the older versions of google-cloud-env
which are required for fastlane to work.
If you run gem cleanup
again, it will probably fail again, unless you have also removed the newer version of google-cloud-env
.
Personally I recommend using bundler
and a local cache of your dependencies so that you do not depend on globally installed gems.
from fastlane.
Same issue !
In my opinions, "gem cleanup" is a routine executed command for period time because stack a lot of versions package would effect fastlane performance
And now we can't clean up old version packages, it doesn't make sense
from fastlane.
Yep. I have noticed that if I run fastlane env
, it prints out the basic set
[β] π [15:42:56]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile [15:42:57]: Generating fastlane environment output, this might take a few seconds...β fastlane environment β
Stack
Key Value OS 14.3.1 Ruby 3.3.0 Bundler? false Git git version 2.39.3 (Apple Git-145) Installation Source /opt/homebrew/opt/ruby/bin/fastlane Host macOS 14.3.1 (23D60) Ruby Lib Dir /opt/homebrew/Cellar/ruby/3.3.0/lib OpenSSL Version OpenSSL 3.2.0 23 Nov 2023 Is contained false Is homebrew false Is installed via Fabric.app false Xcode Path /Applications/Xcode15.2.app/Contents/Developer/ Xcode Version 15.2 Swift Version 5.9.2 System Locale
Variable Value LANG en_US.UTF-8 β LC_ALL en_US.UTF-8 β LANGUAGE en_US.UTF-8 β fastlane files:
No Fastfile found
No Appfile found
fastlane gems
Gem Version Update-Status fastlane 2.219.0 β Up-To-Date Loaded fastlane plugins:
No plugins Loaded
Loaded gems
Gem Version error_highlight 0.6.0 did_you_mean 1.6.3 syntax_suggest 2.0.0 addressable 2.8.6 artifactory 3.0.15 jmespath 1.6.2 aws-partitions 1.887.0 aws-eventstream 1.3.0 aws-sigv4 1.8.0 aws-sdk-core 3.191.0 aws-sdk-kms 1.77.0 aws-sdk-s3 1.143.0 babosa 1.0.4 bundler 2.5.6 rexml 3.2.6 CFPropertyList 3.0.6 colored 1.2 highline 2.0.3 commander 4.6.0 dotenv 2.8.1 emoji_regex 3.2.3 excon 0.109.0 faraday-em_http 1.0.0 faraday-em_synchrony 1.0.0 faraday-excon 1.1.0 faraday-httpclient 1.0.1 multipart-post 2.3.0 faraday-multipart 1.0.4 faraday-net_http 1.0.1 faraday-net_http_persistent 1.2.0 faraday-patron 1.0.0 faraday-rack 1.0.0 faraday-retry 1.0.3 ruby2_keywords 0.0.5 faraday 1.10.3 faraday_middleware 1.2.0 domain_name 0.6.20240107 http-cookie 1.0.5 faraday-cookie_jar 0.0.7 fastimage 2.3.0 gh_inspector 1.1.3 google-cloud-env 1.6.0 json 2.7.1 jwt 2.7.1 mini_magick 4.12.0 naturally 2.2.1 optparse 0.4.0 plist 3.7.1 rubyzip 2.3.2 security 0.1.3 simctl 1.6.10 terminal-notifier 2.0.0 unicode-display_width 2.5.0 terminal-table 3.0.2 tty-screen 0.8.2 tty-cursor 0.7.1 tty-spinner 0.9.3 word_wrap 1.0.0 atomos 0.1.3 claide 1.1.0 colored2 3.1.2 nanaimo 0.3.0 xcodeproj 1.24.0 rouge 2.0.7 xcpretty 0.3.0 xcpretty-travis-formatter 1.0.1 set 1.1.0 public_suffix 5.0.4 httpclient 2.8.3 multi_json 1.15.0 signet 0.18.0 os 1.1.4 googleauth 1.8.1 mini_mime 1.1.5 retriable 3.1.2 trailblazer-option 0.1.2 declarative 0.0.20 uber 0.1.0 representable 3.2.0 google-apis-core 0.11.3 google-apis-androidpublisher_v3 0.54.0 google-apis-playcustomapp_v1 0.13.0 rake 13.1.0 digest-crc 0.6.5 google-apis-storage_v1 0.31.0 google-apis-iamcredentials_v1 0.17.0 google-cloud-errors 1.3.1 google-cloud-core 1.6.1 google-cloud-storage 1.47.0 forwardable 1.3.3 logger 1.6.0 pathname 0.3.0 shellwords 0.2.0 cgi 0.4.1 date 3.3.4 timeout 0.4.1 securerandom 0.3.1 uri 0.13.0 openssl 3.2.0 digest 3.1.1 ipaddr 1.2.6 resolv 0.3.0 time 0.3.0 stringio 3.1.0 open-uri 0.4.1 mutex_m 0.2.0 net-http 0.4.1 net-protocol 0.2.2 connection_pool 2.4.1 net-http-persistent 4.0.2 patron 0.13.3 ostruct 0.6.0 english 0.8.0 erb 4.0.4 abbrev 0.1.2 tempfile 0.2.1 delegate 0.3.1 fileutils 1.7.2 tmpdir 0.2.0 base64 0.2.0 singleton 0.2.0 open3 0.2.1 nkf 0.2.0 prettyprint 0.2.0 pp 0.5.0 find 0.2.0 yaml 0.3.0 psych 5.1.2 generated on: 2024-02-16
Then gem list googleauth
lists versions
*** LOCAL GEMS ***
googleauth (1.11.0, 1.8.1)
Now, if I run a command gem cleanup
, it removes some related packages:
Attempting to uninstall google-cloud-storage-1.47.0
Successfully uninstalled google-cloud-storage-1.47.0
Attempting to uninstall google-apis-playcustomapp_v1-0.13.0
Successfully uninstalled google-apis-playcustomapp_v1-0.13.0
Attempting to uninstall google-apis-iamcredentials_v1-0.17.0
Successfully uninstalled google-apis-iamcredentials_v1-0.17.0
Attempting to uninstall google-apis-androidpublisher_v3-0.54.0
Successfully uninstalled google-apis-androidpublisher_v3-0.54.0
Attempting to uninstall google-apis-core-0.11.3
Successfully uninstalled google-apis-core-0.11.3
Attempting to uninstall googleauth-1.8.1
Successfully uninstalled googleauth-1.8.1
Attempting to uninstall google-apis-storage_v1-0.31.0
Successfully uninstalled google-apis-storage_v1-0.31.0
Clean up complete
And gem list googleauth
prints
*** LOCAL GEMS ***
googleauth (1.11.0)
So, it has removed previous version(s), as expected.
And now fastlane env
gives
/opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems/specification.rb:1474:in `block in activate_dependencies': can't satisfy 'google-cloud-env (>= 1.6.0, < 2.0.0)', already activated 'google-cloud-env-2.1.1' (Gem::LoadError)
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems/specification.rb:1466:in `each'
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems/specification.rb:1466:in `activate_dependencies'
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems/specification.rb:1448:in `activate'
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems.rb:280:in `block in activate_bin_path'
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems.rb:279:in `synchronize'
from /opt/homebrew/lib/ruby/site_ruby/3.3.0/rubygems.rb:279:in `activate_bin_path'
from /opt/homebrew/opt/ruby/bin/fastlane:25:in `<main>'
Now, a command gem uninstall fastlane && gem install fastlane
fixes this. We can see that fastlane env
prints out same set (not gonna paste it again), but a command gem list googleauth
gives updated list, with addition 1.8.1:
*** LOCAL GEMS ***
googleauth (1.11.0, 1.8.1)
I am not that expert level that I could proposal fixes, but maybe either lock the gem package googleauth 1.8.1 so cleanup wouldn't remove it as a needed package or then upgrade fastlane to support the latest version of googleauth?
from fastlane.
google-cloud-env
is locked to a version pre-2.0 to support ruby 2.6. We are not able to drop support for ruby 2.6 now due to Apple being stuck with it on its ecosystem. See #21685
This isn't really an issue in itself. The issue is that you are doing things in a way that isn't compatible with keeping different set of dependencies for different project on your machine.
You should really stop managing all your dependencies in one place. Using cleanup
in combination to your setup will keep causing issues.
I recommend that you
- use
bundler
to manage your dependencies per project. Maintain a Gemfile. - consider installing your dependencies in a folder local to your project.
bundle config set --local path '.bundle'
orbundle config set --local path 'vendor/bundle
. Cleanup is thus local to your project. - always run
bundle install
before runningbundle exec fastlane
to make sure your dependencies are up to date.
I'll close this for now, as this isn't really an issue on fastlane side. Hope that helped. Feel free to reopen if you have more question on the topic.
from fastlane.
Related Issues (20)
- fastlane sigh download_all and "Error parsing provisioning profile at path..."
- fastlane match HOT 4
- bundler: command not found: fastlane
- Individual API Key not supported HOT 3
- fastlane deliver init is not working in CLI
- JEG2/highline should be updated to avoid warning of abbrev missing in standard lib for ruby 3.3.0
- How to get raw exit code from Fastlane HOT 3
- Match import to s3 Crash on encrypting. HOT 2
- Provisioning profile expiration comparison compares Time and DateTime
- AvailableTerritories is deprecated and fastlane is not upgraded to new api endpoints HOT 5
- Match managing provisioning profiles for DriverKit HOT 1
- curb-1.0.0/lib/curl/easy.rb - Failed to read/open file HOT 1
- `match` behaves differently in v2.220.0: `wrong final block length` HOT 19
- Can't upload build to Test Flight; [!] undefined method `refresh!' HOT 3
- A parameter has an invalid value - 'prices' is not a valid relationship name HOT 12
- I run the command 'fastlane match development'. and i got the following error: Looking for related GitHub issues on fastlane/fastlane... Found no similar issues. To create a new issue, please visit: https://github.com/fastlane/fastlane/issues/new Run fastlane env to append the fastlane environment to your issue [!] The request could not be completed because: This request is forbidden for security reasons - You currently don't have access to this membership resource. Contact your team's Account Holder, or an Admin.
- Build_for_testing fails sporadically with error 'Could not find or use auto-linked framework' HOT 2
- Can fastlane support filling in Chinaβs ICP registration number? HOT 1
- [match] provisioning profile generated via match blocks release installation on TestFlight (or on device) HOT 1
- if and switch expressions Swift HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from fastlane.