https://github.com/mongoid/mongoid-compatibility
Compatibility helpers for the many Mongoid versions.
https://github.com/mongoid/mongoid-compatibility
Last synced: 10 months ago
JSON representation
Compatibility helpers for the many Mongoid versions.
- Host: GitHub
- URL: https://github.com/mongoid/mongoid-compatibility
- Owner: mongoid
- License: mit
- Created: 2015-09-17T13:39:43.000Z (almost 11 years ago)
- Default Branch: master
- Last Pushed: 2024-07-08T02:01:51.000Z (almost 2 years ago)
- Last Synced: 2025-04-15T03:55:33.782Z (about 1 year ago)
- Language: Ruby
- Size: 47.9 KB
- Stars: 7
- Watchers: 3
- Forks: 8
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.md
Awesome Lists containing this project
README
Mongoid::Compatibility
=======================
[](http://badge.fury.io/rb/mongoid-compatibility)
[](https://github.com/mongoid/mongoid-compatibility/actions)
[](https://codeclimate.com/github/mongoid/mongoid-compatibility)
[Tested](https://github.com/mongoid/mongoid-compatibility/actions) against:
- MRI: `2.6.x`, `2.7.x`, `3.0.x`, `3.1.x`
- Compatibility helpers for Mongoid versions 2, 3, 4, 5, 6, 7, 8, and 9.
### Install
Add `mongoid-compatibility` to your Gemfile.
```
gem 'mongoid-compatibility'
```
You may explicitly need to `require mongoid/compatibility`.
### Use
#### Mongoid::Compatibility::Version
``` ruby
Mongoid::Compatibility::Version.mongoid2?
# => is this Mongoid 2.x?
Mongoid::Compatibility::Version.mongoid3?
# => is this Mongoid 3.x?
Mongoid::Compatibility::Version.mongoid4?
# => is this Mongoid 4.x?
Mongoid::Compatibility::Version.mongoid5?
# => is this Mongoid 5.x?
Mongoid::Compatibility::Version.mongoid6?
# => is this Mongoid 6.x?
Mongoid::Compatibility::Version.mongoid7?
# => is this Mongoid 7.x?
Mongoid::Compatibility::Version.mongoid8?
# => is this Mongoid 8.x?
```
Instead of checking specifically for a specific version, use `newer` and `older` helpers. For example:
``` ruby
Mongoid::Compatibility::Version.mongoid6_or_newer?
# => is this Mongoid 6.x or 7.x or 8.x, including beta 8?
Mongoid::Compatibility::Version.mongoid5_or_older?
# => is this Mongoid 2.x, 3.x, 4.x or 5.x?
```
#### Mongoid::Compatibility::ObjectId
``` ruby
Mongoid::Compatibility::ObjectId.legal?('4e4d66343b39b68407000001')
# => is this a valid BSON ID?
```
### Contribute
See [CONTRIBUTING](CONTRIBUTING.md).
### Copyright and License
Copyright Daniel Doubrovkine and Contributors, Artsy Inc., 2015-2022
[MIT License](LICENSE.md)