Comments (8)
Okay, I'm comfortable supporting back to at least 2.3 as the changes are relatively minor: #95
from multipart-post.
Okay this is released in v2.2.3 - hopefully we didn't break anything else.
from multipart-post.
Nice!
from multipart-post.
This also manifests with any versions of faraday < 2.0
given their dependency on multipart-post
:
$ docker run --rm -it ruby:2.5-alpine gem install faraday -v '~> 1.0'
Fetching faraday-em_synchrony-1.0.0.gem
Fetching faraday-httpclient-1.0.1.gem
Fetching faraday-multipart-1.0.4.gem
Fetching faraday-net_http_persistent-1.2.0.gem
Fetching faraday-excon-1.1.0.gem
Fetching multipart-post-2.2.2.gem
Fetching faraday-net_http-1.0.1.gem
Fetching faraday-em_http-1.0.0.gem
Fetching faraday-patron-1.0.0.gem
Fetching faraday-rack-1.0.0.gem
Fetching ruby2_keywords-0.0.5.gem
Fetching faraday-1.10.0.gem
Fetching faraday-retry-1.0.3.gem
Successfully installed faraday-em_http-1.0.0
Successfully installed faraday-em_synchrony-1.0.0
Successfully installed faraday-excon-1.1.0
Successfully installed faraday-httpclient-1.0.1
ERROR: Error installing faraday:
The last version of multipart-post (~> 2) to support your Ruby & RubyGems was 2.2.0. Try installing it with `gem install multipart-post -v 2.2.0` and then running the current command again
multipart-post requires Ruby version >= 2.6.0. The current ruby version is 2.5.9.229.
from multipart-post.
Hi!
If I understood what happened correctly, the problem is that 2.2.0 does not work at all on Ruby 2.5 (it probably uses newer syntax), so support was effectively dropped at 2.2.0. However, due to an oversight, the gemspec was not updated to reflect that and thus installing 2.2.0 the gem is possible on Ruby 2.5. 2.2.2 corrects that.
By the way, this case should be better handled by newer gem
CLI versions, because it will automatically choose a version compatible with your Ruby. Sadly, in this case, I don't think it's really compatible but at least you won't get a gem install
error which might be your actual concern.
$ docker run --rm -it ruby:2.5-alpine sh -c "gem update --system && gem install multipart-post -v '~> 2.2'"
(...)
(a bunch of RubyGems upgrade output)
(...)
RubyGems system software updated
Fetching multipart-post-2.2.0.gem
Successfully installed multipart-post-2.2.0
1 gem installed
or
$ docker run --rm -it ruby:2.5-alpine sh -c "gem update --system && gem install faraday -v '~> 1.0'"
(...)
(a bunch of RubyGems upgrade output)
(...)
RubyGems system software updated
Fetching ruby2_keywords-0.0.5.gem
Fetching faraday-retry-1.0.3.gem
Fetching faraday-rack-1.0.0.gem
Fetching faraday-patron-1.0.0.gem
Fetching faraday-net_http_persistent-1.2.0.gem
Fetching faraday-1.10.0.gem
Fetching multipart-post-2.2.0.gem
Fetching faraday-multipart-1.0.4.gem
Fetching faraday-net_http-1.0.1.gem
Fetching faraday-httpclient-1.0.1.gem
Fetching faraday-excon-1.1.0.gem
Fetching faraday-em_synchrony-1.0.0.gem
Fetching faraday-em_http-1.0.0.gem
Successfully installed ruby2_keywords-0.0.5
Successfully installed faraday-retry-1.0.3
Successfully installed faraday-rack-1.0.0
Successfully installed faraday-patron-1.0.0
Successfully installed faraday-net_http_persistent-1.2.0
Successfully installed faraday-net_http-1.0.1
Successfully installed multipart-post-2.2.0
Successfully installed faraday-multipart-1.0.4
Successfully installed faraday-httpclient-1.0.1
Successfully installed faraday-excon-1.1.0
Successfully installed faraday-em_synchrony-1.0.0
Successfully installed faraday-em_http-1.0.0
Successfully installed faraday-1.10.0
13 gems installed
from multipart-post.
I agree this is a pain point and I'm open to ideas about how we can make this work.
The best advice I can give you if you are using EOL Ruby is to pin on multipart-mime
"~> 2.1.0".
I would probably have to defer to @deivid-rodriguez 's advice because it makes sense that older Rubies should only install the most recent compatible version. Unfortunately v2.2.0 won't be compatible with older Rubies either (to the extent that it might be an issue) and therefore while it might install, there is no guarantee it would work.
@olleolleolle do you have any suggestions about what we can do here?
from multipart-post.
This also broke the github pages
provider from travis-ci. Worked before the 2.2.2 release, but now no longer.
Installing deploy dependencies
ERROR: Error installing dpl-pages:
The last version of multipart-post (>= 1.2, < 3) to support your Ruby & RubyGems was 2.2.0. Try installing it with `gem install multipart-post -v 2.2.0` and then running the current command again
multipart-post requires Ruby version >= 2.6.0. The current ruby version is 2.4.5.335.
from multipart-post.
We can try to retroactively support EOL Ruby versions, say back to 2.3, if the compatibility burden is small.
from multipart-post.
Related Issues (20)
- Deprecations aren't required HOT 3
- Force warning HOT 4
- Multipart post with a zip file HOT 2
- Issues with darkfish docs? HOT 5
- Allow UploadIO to accept additional MIME headers as options HOT 4
- 3.0 release changes HOT 8
- Timeout on JRuby on Windows HOT 11
- Tests failing on Windows HOT 1
- Changes in v2.1.0 HOT 2
- NoMethodError: undefined method `alphanumeric' for SecureRandom:Module HOT 3
- Does multipart-post follow Semantic versioning? HOT 2
- Feature request: Don't set "local.path" as a default filename to prevent it from being detected as a binary HOT 5
- CI needed HOT 1
- Can you push a new version to RubyGems? 🙏🏻 HOT 3
- Release a 2.2.0 HOT 3
- Specify correct Ruby version required in 2.2.0 HOT 8
- Silence Noisy Deprecation Warnings HOT 3
- Please inlcude README / LICENSE file into the package. HOT 2
- Namespace conflict issue after 2.2.0 HOT 6
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 multipart-post.