
Security News
OpenGrep Restores Fingerprinting in JSON and SARIF Outputs
OpenGrep has restored fingerprint and metavariable support in JSON and SARIF outputs, making static analysis more effective for CI/CD security automation.
Zonebie prevents bugs in code that deals with timezones by randomly assigning a zone on every run.
If Zonebie helps trigger a timezone-related bug, you can temporarily assign the
ZONEBIE_TZ
environment variable to make your tests deterministic while you
debug (more information below).
And either of these gems which adds timezone support to Ruby:
activesupport
>= 3.0 (Rails 3.0, 3.1, 3.2, 4.0, 4.1, 4.2)tzinfo
>= 1.2If using Bundler (recommended), add to Gemfile:
gem 'zonebie'
Active Support allows setting a global timezone that will be used for many date and time calculations throughout the application.
Zonebie can set this to a random timezone at the beginning of test runs.
Specifically for Active Support, it sets Time.zone
.
Add to test/test_helper.rb
:
Zonebie.set_random_timezone
Add to spec/spec_helper.rb
:
require "zonebie/rspec"
Add a file features/support/zonebie.rb
with the following contents:
Zonebie.set_random_timezone
Zonebie can use the tzinfo
gem, allowing it to work outside of Active Support
(Rails).
However, Zonebie.set_random_timezone
does not work outside of Active Support
because there is not a concept of a global timezone setting. If you simply need
a random timezone for some other part of your tests, Zonebie can help.
zone = TZInfo::Timezone.get(Zonebie.random_timezone)
puts zone.now
# Also works in Rails/Active Support
zone = ActiveSupport::TimeZone[Zonebie.random_timezone]
puts zone.now
When Zonebie.set_random_timezone
is called, Zonebie assigns a timezone and
prints a message to STDOUT:
[Zonebie] Setting timezone: ZONEBIE_TZ="Eastern Time (US & Canada)"
If you would rather that Zonebie not print out this information during your
tests, put Zonebie in quiet mode before calling set_random_timezone
:
Zonebie.quiet = true
To rerun tests with a specific timezone (e.g., to reproduce a bug that only
seems present in one zone), set the ZONEBIE_TZ
environment variable:
# Assuming tests run with simply `rake`
ZONEBIE_TZ="Eastern Time (US & Canada)" rake
git checkout -b my-new-feature
)git commit -am 'Added some feature'
)git push origin my-new-feature
)FAQs
Unknown package
We found that zonebie demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 3 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
OpenGrep has restored fingerprint and metavariable support in JSON and SARIF outputs, making static analysis more effective for CI/CD security automation.
Security News
Security experts warn that recent classification changes obscure the true scope of the NVD backlog as CVE volume hits all-time highs.
Security Fundamentals
Attackers use obfuscation to hide malware in open source packages. Learn how to spot these techniques across npm, PyPI, Maven, and more.