Simple libs dependencies copier
Create and modify PDF files with JavaScript
Create and modify PDF files with JavaScript
Core istanbul API for JS code coverage
Source maps support for istanbul
Tree utilities which provides a full-featured extend and object-cloning facility, and various tools to deal with nested object structures.
Salesforce JS library for templates
TypeScript definitions for istanbul-lib-report
(Deprecated: use apg-js instead.) Library of core parsing modules required by apg and apg-generated parsers.
An optimised way to copy'ing an object. A small and simple integration
Copy files && directories with webpack
Require hook for automatic V8 compile cache persistence
Data library for istanbul coverage objects
TypeScript definitions for istanbul-lib-coverage
Copy a descriptor from object A to object B
Base reporting library for istanbul
Copy stuff into clipboard using JS with fallbacks
NocoDB GUI
A blazing fast deep object copier
Hooks for require, vm and script used in istanbul
Copy static properties, prototype properties, and descriptors from one object to another.
A bpmn-js extension which allows to render selected elements as images
Copy-to-clipboard React component
Small, fast and advanced PNG / APNG encoder and decoder
Per-gem control over copying native extension shared libraries (.so/.bundle) into the gem's lib/ directory after installation. Useful for old/unmaintained gems that expect extensions in lib/.
require 'rubygems' require 'rake' require 'echoe' Echoe.new('vmth', '0.0.2') do |p| p.description = File.open(File.dirname(__FILE__+"/DESCRIPTION")).read p.summary = "A VM test harness for testing operational configurations" p.url = "http://github.com/gregretkowski/vmth" p.author = "Greg Retkowski" p.email = "greg@rage.net" p.ignore_pattern = ["tmp/*", "script/*", "ol/*"] p.rdoc_template = nil p.rdoc_pattern = /^(lib|bin|tasks|ext)|^README|^CHANGELOG|^TODO|^LICENSE|^QUICKSTART|^CONFIG|^COPYING$/ # p.rdoc_template = "" p.development_dependencies = [] p.runtime_dependencies = [ 'formatr', 'net-ssh', 'net-scp', ] end
= Mcrypt - libmcrypt bindings for Ruby Mcrypt provides Ruby-language bindings for libmcrypt(3), a symmetric cryptography library. {Libmcrypt}[http://mcrypt.sourceforge.net/] supports lots of different ciphers and encryption modes. == You will need * A working Ruby installation (>= 1.8.6 or 1.9) * A working libmcrypt installation (2.5.x or 2.6.x, tested with 2.5.8) * A sane build environment == Installation Install the gem: gem install ruby-mcrypt --test -- --with-mcrypt-dir=/path/to/mcrypt/prefix If you're installing on Ubuntu: sudo apt-get install mcrypt libmcrypt-dev gem install ruby-mcrypt If you want to run the longer test suite, do this instead: MCRYPT_TEST_BRUTE=1 \ gem install ruby-mcrypt --test -- --with-mcrypt-dir=/path/to/mcrypt/prefix Put this in your code: require 'rubygems' require 'mcrypt' Or in Rails' environment.rb: gem "ruby-mcrypt", :lib => "mcrypt" == Usage crypto = Mcrypt.new(:twofish, :cbc, MY_KEY, MY_IV, :pkcs) # encryption and decryption in one step ciphertext = crypto.encrypt(plaintext) plaintext = crypto.decrypt(ciphertext) # encrypt in smaller steps while chunk = $stdin.read(4096) $stdout << crypto.encrypt_more(chunk) end $stdout << crypto.encrypt_finish # or decrypt: while chunk = $stdin.read(4096) $stdout << crypto.decrypt_more(chunk) end $stdout << crypto.decrypt_finish == Known Issues * Test coverage is lacking. If you find any bugs, please let the author know. == Wish List * IO-like behavior, e.g. crypto.open($stdin) { |stream| ... } == Author * Philip Garrett <philgarr at gmail.com> == Copyright and License Copyright (c) 2009-2013 Philip Garrett. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Since we're all following very strict standards with regards to how our gems are constructed, we might as well pack all those gems back into a directory and use that directory in our load path. Once you do that, you'll discover that loading from all these paths and doing dependency resolution cost on every ruby invocation. On our machines, using wad saves us >500ms every time, on every call. Wad helps you with getting there: It vendors your Gemfile below `vendor/bundle`, then copies relevant source code to `vendor/lib`. All in one simple call.
I believe that some of developers faced a situation when you can't convince your customer | project manager | team lead | teammates to use any of existing business logic handler, as they think it: - has no value for business - is hard to integrate - needs to be learned be developers - is no guarantee that this gem will be well maintained in the future - is developed by no name author But you still want to make your controllers and models as thin as possible. If such situation is familiar for you then this gem is for you. This is a one file gem, just copy `Service` class from `lib/simple_logic_step.rb` to your project and specs for it from `spec/simple_logic_step/logic_step_spec.rb`.
= Backup utility for database, folders and files Backs up a MySQL database, folders and files to a default folder (~/backup) or to a specified folder. If the --cron switch is provided the specified database and files are not backed up rather a cron job of the provided command is added to crontab. == Install The application can be installed with $ gem install syc-backup == Usage Backup a database to the default folder _~/backup_ $ sycbackup -d database -uuser -ppass Backup a MySQL database, a directory and files to the default folder $ sycbackup -d database -uuser -ppass -f directory,file1,file2 Specify a backup folder $ sycbackup backup/folder -d database -uuser -ppass -f directory,file1,file2 Override files in the backup folder if they exist $ sycbackup backup/folder --override -f directory,file1,file2 Don't compress the backup $ sycbackup --no-compress -f directory,file1,file2 Create a cron job that is scheduled every day at 2:30 $ sycbackup -d database -uuser -ppass -f directory,file1 --cron 30,2,*,*,* If the user or password contains characters as '(' you have to escape them. A password like 123(56 has to be provided with pass\"123\(56\". == Usage of --override and --no-compress Whether the backup directory and the backup files are time stamped depends how --override and --no-compress is set. The results are shown in the table below. --override --no-compress backup directory backup file(s) 0 0 w/o timestamp w/ timestamp 1 0 w/o timestamp w/ timestamp 0 1 w/ timestamp uncompressed 1 1 w/o timestamp uncompressed == Supported Platform syc-backup has been tested with 1.9.3 == Notes The application backs up the MySQL database with _mysqldump_. The dumpfile has the form yyyymmdd-HHMMSS_databasename.sql. After the files are backed up the dumpfile will be deleted. If the --no-compress is provided the files are copied to the backup folder. Otherwise they are compressed with _tar cfz YYYYmmdd-HHMMSS_syc-backup.tar.gz_. If the --override switch is not provided the backup directory will be added a timestamp. So if you create a cron job you should every now and then delete obsolete backup folders. The source contains lib/backup/file_backup.rb which is not used in the application. == Tests The tests create folders and files and will be deleted after the tests finish. _MySQLBackup_ needs to run a MySQL database with a database _test_ and a user _user_ with the password _pass_. The test files live in the test folder and begin with test_. There is a rake file available which can be used to run all tests with $ rake test == Links * [http://sugaryourcoffee.github.com/syc-backup] - RubyDoc * [http://www.github.com/sugaryourcoffee/syc-backup] - Source code on GitHub * [http://syc.dyndns.org/drupal/content/backup-drupal-database] - Development notebook * [https://rubygems.org/gems/syc-backup] - RubyGems
OVH::Provisioner ================ Interact with OVH REST API, mainly targeted to manage dedicated servers and OVH DNS. Installation ------------ Add this line to your application's Gemfile: ```ruby gem 'ovh-provisioner' ``` And then execute: $ bundle Or install it yourself as: $ gem install ovh-provisioner Configuration ------------- The best way to use ovh-provisioner is to create a configuration file (recommended path: ~/.config/ovh-provisioner.yml) containing your keys and some general configuration. Then, just launch it to get all commands with their description. Example: ```yaml # All keys can be overriden with cli options api_url: https://eu.api.ovh.com/1.0 app_key: XXXXXXXXXXXX app_secret: XXXXXXXXXXXXXXXXXXXXXXXXXXXXXX consumer_key: XXXXXXXXXXXXXXXXXXXXXXXXXXXX template: template_name # is be defined in OVH manager when you save a template use_distrib_kernel: true ssh-key: 'key_name_to install' # name_scheme support any variable available as attribute in # lib/ovh/provisioner/api_object/dedicated_server.rb # Along with name_domain, it is used to rename (reverse dns) servers name_scheme: '%{location}-%{flavor_tag}-%{server_id}.%{vrack}' name_domain: example.com # example of flavors, you can use any hardware parameters from # GET /dedicated/server/{serviceName}/specifications/hardware # to differentiate your flavors flavors: EG-16S: tag: eg16s hardware: description: 'Serveur EG-16 - E3-1230v6 - 16GB - SoftRaid 2x450GB NVMe' EG-32S: tag: eg32s hardware: description: 'Serveur EG-32 - E3-1270v6 - 32GB - SoftRaid 2x450GB NVMe' EG-64S: tag: eg64s hardware: description: 'Serveur EG-64 - E5-1650v3 - 64GB - SoftRaid 2x450GB NVMe' ``` Development ----------- After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment. To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org). Contributing ------------ Please read carefully [CONTRIBUTING.md](CONTRIBUTING.md) before making a merge request. License and Author ------------------ - Author:: Samuel Bernard (<samuel.bernard@gmail.com>) ```text Copyright (c) 2015-2016 Sam4Mobile, 2017-2018 Make.org Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. ```
== README.md: #ScheduledResource This gem is for displaying how things are used over time -- a schedule for a set of "resources". You can configure the elements of the schedule and there are utilities and protocols to connect them: - Configuration (specification and management), - Query interfaces (a REST-like API and internal protocols to query the models), and - A basic Rails controller implementation. We have a way to configure the schedule, internal methods to generate the data, and a way to retrieve data from the client. However this gem is largely view-framework agnostic. We could use a variety of client-side packages or even more traditional Rails view templates to generate HTML. In any case, to get a good feel in a display like this we need some client-side code. The gem includes client-side modules to: - Manage <b>time and display geometries</b> with "infinite" scroll along the time axis. - <b>Format display cells</b> in ways specific to the resource models. - <b>Update text justification</b> as the display is scrolled horizontally. ## Configuration A **scheduled resource** is something that can be used for one thing at a time. So if "Rocky & Bullwinkle" is on channel 3 from 10am to 11am on Saturday, then 'channel 3' is the <u>resource</u> and that showing of the episode is a <u>resource-use</u> block. Resources and use-blocks are typically Rails models. Each resource and its use-blocks get one row in the display. That row has a label to the left with some timespan visible on the rest of the row. Something else you would expect see in a schedule would be headers and labels -- perhaps one row with the date and another row with the hour. Headers and labels also fit the model of resources and use-blocks. Basic timezone-aware classes (ZTime*) for those are included in this gem. ### Config File The schedule configuration comes from <tt>config/resource_schedule.yml</tt> which has three top-level sections: - ResourceKinds: A hash where the key is a Resource and the value is a UseBlock. (Both are class names), - Resources: A list where each item is a Resource Class followed by one or more resource ids, and - visibleTime: The visible timespan of the schedule in seconds. The example file <tt>config/resource_schedule.yml</tt> (installed when you run <tt>schedulize</tt>) should be enough to display a two-row schedule with just the date above and the hour below. Of course you can monkey-patch or subclass these classes for your own needs. ### The schedule API The 'schedule' endpoint uses parameters <tt>t1</tt> and <tt>t2</tt> to specify a time interval for the request. A third parameter <tt>inc</tt> allows an initial time window to be expanded without repeating blocks that span those boundaries. The time parameters _plus the configured resources_ define the data to be returned. ### More About Configuration Management The <b>ScheduledResource</b> class manages resource and use-block class names, id's and labels for a schedule according to the configuration file. A ScheduledResource instance ties together: 1. A resource class (eg TvStation), 2. An id (a channel number in this example), and 3. Strings and other assets that will go into the DOM. The id is used to - select a resource _instance_ and - select instances of the _resource use block_ class (eg Program instances). The id _could_ be a database id but more often is something a little more suited to human use in the configuration. In any case it is used by model class method <tt>(resource_use_block_class).get_all_blocks()</tt> to select the right use-blocks for the resource. A resource class name and id are are joined with a '_' to form a tag that also serves as an id for the DOM. Once the configuration yaml is loaded that data is maintained in the session structure. Of course having a single configuration file limits the application's usefulness. A more general approach would be to have a user model with login and configuration would be associated with the user. ## Installation Add this line to your application's Gemfile: ```ruby gem 'scheduled_resource' ``` And then execute: $ bundle Or install it yourself as: $ gem install scheduled_resource Then from your application's root execute: $ schedulize . This will install a few image placeholders, client-side modules and a stylesheet under <tt>vendor/assets</tt>, an example configuration in <tt>config/resource_schedule.yml</tt> and an example controller in <tt>app/controllers/schedule_controller.rb</tt>. Also, if you use $ bundle show scheduled_resource to locate the installed source you can browse example classes <tt>lib/z_time_*.rb</tt> and the controller helper methods in <tt>lib/scheduled_resource/helper.rb</tt> ## Testing This gem also provides for a basic test application using angularjs to display a minimal but functional schedule showing just the day and hour headers in two different timezones (US Pacific and Eastern). Proceed as follows, starting with a fresh Rails app: $ rails new test_sr As above, add the gem to the Gemfile, then $ cd test_sr $ bundle $ schedulize . Add lines such as these to <tt>config/routes.rb</tt> get "/schedule/index" => "schedule#index" get "/schedule" => "schedule#schedule" Copy / merge these files from the gem source into the test app: $SR_SRC/app/views/layouts/application.html.erb $SR_SRC/app/views/schedule/index.html.erb $SR_SRC/app/assets/javascripts/{angular.js,script.js,controllers.js} and add <tt>//= require angular</tt> to application.js just below the entries for <tt>jquery</tt>. After you run the server and browse to http://0.0.0.0:3000/schedule/index you should see the four time-header rows specified by the sample config file. ## More Examples A better place to see the use of this gem is at [tv4](https://github.com/emeyekayee/tv4). Specifically, models <tt>app/models/event.rb</tt> and <tt>app/models/station.rb</tt> give better examples of implementing the ScheduledResource protocol and adapting to a db schema organized along somewhat different lines. ## Contributing 1. Fork it ( https://github.com/emeyekayee/scheduled_resource/fork ) 2. Create your feature branch (`git checkout -b my-new-feature`) 3. Commit your changes (`git commit -am 'Add some feature'`) 4. Push to the branch (`git push origin my-new-feature`) 5. Create a new Pull Request
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.
No description provided.