
Research
Malicious fezbox npm Package Steals Browser Passwords from Cookies via Innovative QR Code Steganographic Technique
A malicious package uses a QR code as steganography in an innovative technique.
= FancyOpenStruct
{}[http://allthebadges.io/tomchapin/fancy-open-struct/badge_fury]
{
}[http://allthebadges.io/tomchapin/fancy-open-struct/gemnasium]
{
}[http://allthebadges.io/tomchapin/fancy-open-struct/travis]
{
}[http://allthebadges.io/tomchapin/fancy-open-struct/coveralls]
{
}[http://allthebadges.io/tomchapin/fancy-open-struct/code_climate]
FancyOpenStruct is a subclass of OpenStruct, and is a variant of RecursiveOpenStruct.
This gem allows you to convert nested hashes into a structure where keys and values can be navigated and modified via dot-syntax, like: foo.bar = :something. This particular gem also adds support for the Hash methods you know and love (such as length or merge), and also allows you to access and modify the contained data structure the same way that you would handle a normal Hash.
== Usage
FancyOpenStruct allows for hashes within hashes to be called in a chain of methods:
require 'fancy-open-struct'
fos = FancyOpenStruct.new( { :fooa => { :foob => 'fooc' } } )
fos.fooa.foob # => 'fooc'
Also, if needed, nested hashes can still be accessed as hashes:
fos.fooa_as_a_hash # { :foob => 'fooc' }
Get and set values either via dot syntax, or hash syntax (Hash keys are handled as Symbols):
fos = FancyOpenStruct.new
fos.foo = 'bar' fos[:foo] # 'bar'
fos[:baz] = 'qux' fos.baz # 'qux'
fos.length # 2
FancyOpenStruct can also optionally recurse across arrays, although you have to explicitly enable it:
h = { :somearr => [ { :name => 'a'}, { :name => 'b' } ] }
fos = FancyOpenStruct.new(h, :recurse_over_arrays => true )
fos.somarr[0].name # => 'a' fos.somarr[1].name # => 'b'
== Installation
Available as a gem in rubygems, the default gem repository.
If you use bundler, just throw that in your gemfile :
gem 'fancy-open-struct'
You may also install the gem manually :
gem install fancy-open-struct
== Note on Patches/Pull Requests
== Copyright
Copyright (c) 2014 Thomas H. Chapin. See LICENSE for details.
This gem is based on the recursive-open-struct gem by William (B.J.) Snow Orvis, which can be found here: https://github.com/aetherknight/recursive-open-struct
FAQs
Unknown package
We found that fancy-open-struct demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer 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.
Research
A malicious package uses a QR code as steganography in an innovative technique.
Research
/Security News
Socket identified 80 fake candidates targeting engineering roles, including suspected North Korean operators, exposing the new reality of hiring as a security function.
Application Security
/Research
/Security News
Socket detected multiple compromised CrowdStrike npm packages, continuing the "Shai-Hulud" supply chain attack that has now impacted nearly 500 packages.