Comments (6)
@rsutphin, thank you for opening this issue!
During our pairing session, @phlipper and I spent most of the day looking through this issue as we have projects that are not resolving gem dependencies correctly.
We see the same behavior as you are with the newer versions of a gem having missing dependencies. I used your script to check against our gem thincloud-postmark
:
# ruby list_gem_deps.rb thincloud-postmark
[{:name=>"thincloud-postmark",
:number=>"0.4.0",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"thincloud-postmark",
:number=>"0.3.2",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"thincloud-postmark",
:number=>"0.3.1",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"thincloud-postmark",
:number=>"0.3.0",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"thincloud-postmark",
:number=>"0.2.0",
:platform=>"ruby",
:dependencies=>[["postmark-rails", "~> 0.4.1"]]},
{:name=>"thincloud-postmark",
:number=>"0.1.1",
:platform=>"ruby",
:dependencies=>[["postmark-rails", "~> 0.4.1"]]},
{:name=>"thincloud-postmark",
:number=>"0.1.0",
:platform=>"ruby",
:dependencies=>[]}]
As we were testing we wanted to see what would happen with a newly created gem. We used bundle gem
command for the initial structure and then pushed with both rake release
and gem push
. We also used different methods of requiring dependencies (add_dependency
vs add_runtime_depency
):
# ruby list_gem_deps.rb elskwid-gem-test
[{:name=>"elskwid-gem-test",
:number=>"0.0.3",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"elskwid-gem-test",
:number=>"0.0.2",
:platform=>"ruby",
:dependencies=>[]},
{:name=>"elskwid-gem-test",
:number=>"0.0.1",
:platform=>"ruby",
:dependencies=>[]}]
Issuing bundle install
will not find dependencies for these gems since it relies on this endpoint.
Bottom line, it didn't matter what the dependencies were or how we required them in our gemspec.
One final note: When we run bundler with the --verbose
flag we can see the gem names coming back correctly during the fetch metadata stage but they are not included in the install list.
from bundler-api.
⬆️
from bundler-api.
🎉 👍
from bundler-api.
rubygems/bundler#2185 (comment)
Is there a way to update the database so that the older gems and dependencies are updated so that all of the gems work correctly? I saw this mentioned in issue #18
from bundler-api.
A fix has been deployed and the migration has been run. Please let me know if you're still running into issues.
from bundler-api.
Thanks @elskwid, @hone, and all. I have verified that the fixed data has resolved my original issue.
from bundler-api.
Related Issues (20)
- Retry PG timeouts rather than crashing update task
- /api/v1/dependencies?gems=jpmobile always returns 500 HOT 8
- Expire Fastly cache on new index files HOT 5
- Move the entire Bundler API into rubygems/rubygems.org HOT 1
- Action items from outage on 3/22 HOT 1
- Check for cache compliance with the caching RFC HOT 1
- [Wishlist] Differentiate type of dependency HOT 2
- Update Appsignal
- ArgumentError
- Possible CDN issue for "inspec" gem HOT 2
- Enable configuration for an enterprise private gem server HOT 3
- Librato is rejecting data with values of `nil` HOT 1
- Graph Fastly response in Librato HOT 1
- Capture version information from user agent header HOT 5
- `bundle update` update `haml` to a beta version HOT 6
- Exception when gems is an array HOT 3
- Build read-through rubygems caching and mirroring HOT 1
- Proposal serving new index format HOT 3
- API Not Serving Dependencies to Bundler Properly? HOT 7
- Vagrant file? HOT 7
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 bundler-api.