text:
# Prototype

## Definition
Specify the kind of objects to create using a prototypical instance, and create new objects by copying this prototype.

## Participants
The objects participating in this pattern are:

- Client -- In sample code: the run() function.
    - creates a new object by asking a prototype to clone itself
- Prototype -- In sample code: CustomerPrototype
    - creates an interfaces to clone itself
- Clones -- In sample code: Customer
    - the cloned objects that are being created

## General Formula
``` js
function Prototype(proto) {
    this.proto = proto;
    this.clone = function () {
        var product = new Product();
        product.prop1 = proto.prop1;
        product.prop2 = proto.prop2;
        return product;
    }
}

function Product(prop1, prop2) {
    this.prop1 = prop1;
    this.prop2 = prop2;

    this.print = function () {
        console.log("prop1: " + this.prop1 + "; prop2: " + this.prop2);
    }
}

function Client() {
    var proto = new Product('A', 'B');
    var prototype = new Prototype(proto);
    var product = prototype.clone();
    product.print();//prop1: A; prop2: B
}

Client();
```

repository: wdpm/js-design-patterns

repo_name: wdpm/js-design-patterns


text:
# cypress-without

`without` command for Cypress (https://www.cypress.io) for breaking out of a `within` inside custom commands

## Use

### `without`

Either import and use the command directly as a plain function:

```javascript
import { without } from '@wisersolutions/cypress-without'

cy.get('.some-container').within(() => {
  // ... find elements inside the container only
  without(() => {
    // ... find elements anywhere (e.g. drop-downs rendered through portals)
  })
  // ... find more elements just inside the container
})
```

Or register the command with Cypress and chain it off `cy`:

```javascript
import '@wisersolutions/cypress-without/lib/register' // best done just once in your support script

cy.get('.some-container').within(() => {
  // ... find elements inside the container only
  cy.without(() => {
    // ... find elements anywhere (e.g. drop-downs rendered through portals)
  })
  // ... find more elements just inside the container
})
```

Provide `{ log: false }` as the second argument to mute the log output.

### `absoluteRoot`

If you need to chain off the document root rather than perform a one-off action
on it, use `absoluteRoot` to get the root.

```javascript
import { absoluteRoot } from '@wisersolutions/cypress-without'

export const getActiveModal = () => absoluteRoot().find('.some-modal:visible')
```

This helper also gets registered as Cypress command when importing `…/register` (see above).

## Development

### Install

Install dependencies using:

```sh
npm install
```

### Develop

After you modify sources, run the following (or set up your IDE to do it for you):

- format the code using `npm run format`
- lint it using `npm run lint`
- test it using `npm test`

and fix the errors, if there are any.

### Publish

Publishing is done in two steps:

1. Create a new version tag and push it to the repository:
    ```sh
    npm version <patch|minor|major>
    git push --follow-tags
    ```
1. Build and publish the new version as a npm package:
    ```sh
    npm publish --access public
    ```

license: MIT

repository: WiserSolutions/cypress-without

branch_name: refs/heads/master

extension: md

gha_language: JavaScript

gha_license_id: MIT

license_type: permissive

repo_name: WiserSolutions/cypress-without


text:
# polybar-indodax

> Forked from [willHol/polybar-crypto](https://github.com/willHol/polybar-crypto) to suit the Indodax API.

A *polybar script* that displays the price of various **crypto-currencies** based on local (Indonesia) crypto exchange: **Indodax**.

![both](https://user-images.githubusercontent.com/1184957/110332836-73e59a00-8053-11eb-8cbf-ce6ebbbc0ccf.png)

## Setup
```bash
mkdir -p ~/.config/polybar/scripts &&
    cd ~/.config/polybar/scripts &&
    git clone https://github.com/ditatompel/polybar-indodax.git &&
    cd polybar-indodax &&
    cp config_sample config
```

Then in `~/.config/polybar/config`:

```ini
[bar/top]

...

modules-right = crypto

...

[module/crypto]
type = custom/script
; Indodax Public API rate limited to 180request/minute, use the resources wisely.
interval = 60
exec = /home/<user>/.config/polybar/scripts/polybar-indodax/indodax.py

```

## Update
```bash
cd ~/.config/polybar/scripts/polybar-indodax && git pull
```

## Dependency
* Python >=3.6

## Example Configuration

`~/.config/polybar/scripts/polybar-indodax/config`
```ini
[general]
; Information displayed on Polyfill. can be both, percentage, or price.
; default: both
display = both

; Use hexadecimal color code, Polybar alpha value is supported
color_symbol = #0a81f5
color_down = #ff2424
color_up = #00ff84

; begin list of cryptocurrency
[btc_idr]
symbol = BTC

[ada_idr]
symbol = ADA

[eth_idr]
symbol = ETH

[xmr_idr]
symbol = XMR

```

### Display Modes

`display = percentage`

![percentage](https://user-images.githubusercontent.com/1184957/110332713-47318280-8053-11eb-8056-2bca58c6f799.png)

`display = price`

![price](https://user-images.githubusercontent.com/1184957/110332913-8eb80e80-8053-11eb-945a-8d7aaa492c70.png)

`display = both`

![both](https://user-images.githubusercontent.com/1184957/110332836-73e59a00-8053-11eb-8cbf-ce6ebbbc0ccf.png)

## Notes
> I don't work or have any affiliate with official Dompet Bitcoin Indonesia or INDODAX Trading Platform. This program is free software and distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

repository: ditatompel/polybar-indodax

branch_name: refs/heads/main

gha_language: Python

repo_name: ditatompel/polybar-indodax


text:
# Botnet-monitoring-and-detection-using-SDN

PFE TELECOM SUDPARIS 2016
Mehdi Mtimet and Geoffrey Boulanger, directed by Gregory Blanc

# Subject

Botnet monitoring and detection using Software Defined Networking. Mininet topology using POX Controller to manage flows between hosts.

# How to use

To initialize the Mininet topology, open a command prompt on your Mininet Virtual Machine and enter

```
sudo mn --custom init_topology.py --topo mytopo --mac --switch ovsk --controller remote
```

Then, you can start the controller controller_pox.py

The 3 scripts describe how a bot master and his slaves behave compared to a sane client.
You can launch them by opening an xterm terminal in your Mininet VM

```
xterm Client
xterm Slave
xterm Master
```

and execute each corresponding script.


text:
# CONTRACT FOR EOS KNIGHTS

## ACTION NAME: petgacha2

### Parameters
Input parameters:

* `from` (player name)
* `type` (gacha type)
* `count` (gacha count)
* `block` (last block)
* `checksum` (checksum field to prevent bots)

### Intent
INTENT. The intent of the `{{ petgacha }}` action is to get random pets. You can pass high or low classes to the 'type' parameter. You can get normal, rare or unique pets from low class gacha. Otherwise you can get rare, unique or legendary pets from high-class gacha. Magic water will be consumed. If the magic water is insufficient, it fails.

### Term
TERM. This Contract expires at the conclusion of code execution.


text:
# PROTOCOL OF DATA EXCHANGING BETWEEN USER AND SERVER

## Verification of server
This step is using to guarantee the client that this is real server,
not a fiction.

    1. Server sends __READY_FOR_TRANSFERRING__.
    2. Client sends control message - random array of 2048 bytes.
    5. Server signs this message and responses the signature (array of 256 bytes).
    6. Client verifies that signature is actually from server.

## Creating auxiliary connection
In order to provide the parallel output messages for client must be
created auxiliary connection.

    1. Server generates check_phrase (now is just array of 2048 random
       bytes) and sends it to the client.
    2. Client creates new socket object and tries to connect to the
       addidional public server.
    3. Additional public server receives from each client 2048 bytes.
       IMPORTANT: server waits only TIMEOUT seconds and then closes the conneciton.
       Then additional server appends new socket to the data structure with key - check-phrase..
    4. Main server tries TIMEOUT seconds to get connection from data strutcure
       with given check-phrase.
    5. If it's possible server remember auxiliary connection for this user.

## Registration
Registration of new client requires from him new unique name and password.
The protocol is:

    1. Client sends command __REGISTRATION__ to server.
    2. Server checks if all the parameters are correct.
    3. Doing Verification of server
    4. Client sends json if verification is successfully passed.
            {
                "Name": ...,
                "PasswordHash": ...
                ...   # TODO add other information about user.
            }
    5. Server checks if there is no user with such name and registers new user.
    6. If the previous condition is wrong - sends WRONG_NAME and repeat 6.
    7. Server tries to create auxiliary connection.
    8. If 7 successfully done - remember user and notify him.

## Logging in
Logging requires from the client his name and password. If OK - sends
all the neccessary information.

    1. Client sends command __SIGN_IN__ to server.
    2. Server checks if all the parameters are correct.
    3. Doing Verification of server.
    4. Client sends json if verification is successfully passed.
            {
                "Name": ...,
                "PasswordHash": ...
            }
    5. Server checks if there is user with such name and verify his passwordHash.
    6. If the previous condition is wrong - sends WRONG_NAME or WRONG_PASSWORD and repeat 6.
    7. Server tries to create auxiliary connection.
    8. If 7 successfully done - remember user and notify him.
    9. If it's OK - send all the user's chats via auxiliary connection.

## Creating of chat
Creating of new chat requires from client new unique name of chat and
list of real users that will be added to this chat.

    1. Client sends command __CREATE_CHAT__ to server.
    2. Server checks if all the parameters are correct.
    3. If OK, sends to the client __READY_FOR_TRANSFERRING__.
    4. Client sends json.
            {
                "Name": ...,          # name of the chat
                "ContentType": "ListOfMembers",
                "ContentSize": amount of bytes that will be sent,
            }
    5. Server checks if all the parameters are correct.
    6. If they are, server sends __READY_FOR_TRANSFERRING__
    7. Client sends all the bytes that is pickle of list of members.
    8. Server adds all the members to the new chat and creates ChatAssistant.
    9. Server adds client's auxiliary socket to the ChatAssistant. This causes
       automatical sending of all the messages and list of members to this socket.

## Chat opening

    1. Client sends command __OPEN_CHAT__ to server.
    2. Server checks if all the parameters are correct
    3. If OK, sends to the client __READY_FOR_TRANSFERRING__.
    4. Client sends json.
            {
                "Name": ...          # name of the chat
                "ContentType": CHAT/CHANNEL
                ...                  # there could be possible features
            }
    5. Server checks if all the parameters are correct.
    6. If OK, gets ChatAssistant from cache (or creates it) and adds there
       new UserObserver with auxiliary user socket.
    7. Run mainloop of messages sending


text:
```@meta
CurrentModule = GeoInterface
```

# Simple Features
Simple Features ([SF](https://en.wikipedia.org/wiki/Simple_Features)) are OGC standards describing two dimensional geographic features, such as Points and Polygons and the relations between them.
The standards describe a hierarchy of types (Part 1), a functional interface with SQL (Part II) and an SQL/MM extension with support for circular geometry types, such as `Circularstring`.

## Type hierarchy
All types used here come from the SF. We added `Trait` to all geometry types here to distinguish them from actual geometry structs.

![SF Type hierarchy. From the Simple Feature standard by OGC.](types.png)
`The SF Type hierarchy. From OpenGIS® Implementation Standard for Geographic information - Simple feature access - Part 1: Common architecture at http://www.opengis.net/doc/is/sfa/1.2.1.`

## Changes with respect to SF
While we try to adhere to SF, there are changes and extensions to make it more Julian.

### Function names
All function names are without the `ST_` prefix and are lowercased. In some cases the names have changed as well, to be inline with common Julia functions. `NumX` becomes `nx` and `geomN` becomes `getgeom`:
```julia
GeometryType -> geomtrait
NumGeometries -> ngeom
GeometryN -> getgeom
NumPatches -> npatch
# etc
```

We generalized [`ngeom`](@ref) and [`getgeom`](@ref) to apply to
all geometries, not just a [`AbstractGeometryCollectionTrait`](@ref)s.

We also simplified the dimension functions. From the three original (`dimension`, `coordinateDimension`, `spatialDimension`) there's now only the coordinate dimension, by using `ncoords`, which represent coordinate dimensions like `X`, `Y`, `Z` and `M`. Topological dimensions (a point is 0-dimensional), and the functions related to it, are not used in this interface to prevent confusion. Similarly, we do not overload the Julia `ndims`, to prevent confusion and possible conflict with custom vector based geometries.

```julia
coordinateDimension -> ncoords  # x, y, z, m
dimension -> unused
spatialDimension -> unused
```

We've generalized the naming of some functions:
```julia
SRID -> crs
envelope -> extent  # also aliased to bbox
```

And added a helper method to clarify the naming of coordinates.
```julia
coordnames = (:X, :Y, :Z, :M)
```

### Coverage
Not all SF functions are implemented, either as a possibly slower fallback or empty descriptor or not at all. The following SF functions are not (yet) available.

```julia
dimension  # topological dimensions
spatialDimension

locateAlong
locateBetween
```

gha_language: Julia


text:
Topup
=====

I cooked up this site as a what-if project, since it was impossible to buy phone topups (vouchers that increase your phone's credit) online in Malawi. It made buying large amounts, e.g. the 10,000 MKw for a 5GB data bundle on TNM, a bit of a hassle as you'd have to go around town handing out large sums of cash to various street vendors who each had a few to sell. It also made running out of credit after dark unfortunate.

The result is this site, currently online at http://topup.georgenixon.co.uk. Most of it is the front end - style and presentation, some JavaScript, and the PHP to make orders. After that point, users are informed that it's just a demo and the rest of the site hasn't been written yet.

It has some back end bits, like drawing the telco names and corresponding denominations of topups from a database and dynamically working out how to send the fewest codes to reach the target amount.

What is missing is handing off to PayPal or other online payment system, and then fulfilling the order when it is successful. There's no admin routing for adding topups etc, you'll have to do it straight into the database at present. It also doesn't check if the topups it wants to sell are in stock, or mark them as sold or write to the topups table at all.

1. Requirements
---------------

To get started with this website, you will need
1) a PHP web server like Apache (mine is running PHP 5.3; I haven't tested on earlier versions)
2) a MySQL database and a user account you can use

2. Technologies
---------------

This project uses a few other open source projects:

+ [SimpleTest](http://www.simpletest.org/) - PHP unit testing.
+ [Bootstrap from Twitter](twitter.github.com/bootstrap/) - UI framework for nice buttons, layout etc.
+ [jQuery](http://jquery.com) - always.
+ [MeekroDB](http://www.meekro.com/) - simple to use MySQL library for PHP.

3. Installation
----------------

1. Run `db/topup.sql` on your MySQL database to recreate the requisite database.
2. Copy `db/sample_db.php` to `db/db_cfg.php` and change the values to your own MySQL details.
3. Update or delete the Google Analytics code in the template `classes/Page.php` to your own account, because otherwise the usage stats will be sent to me!
4. Run the unit tests in your browser at `<site root>/tests/all_tests.php`. Hopefully they all pass; if not, you might need to check your Apache or MySQL setup.

repository: mehulsbhatt/topup-malawi

repo_name: mehulsbhatt/topup-malawi


text:
---
layout: post
title: Voronoi cookies and the post office problem
excerpt: "The cookies that I baked formed a Voronoi diagram. The Voronoi diagram is a useful mathematical tool."
comments: false
categories: articles
share: true
tags: [mathematics]
---

In an attempt to bake cookies, I failed to place the balls of dough far enough apart and, instead, a cookie cake formed. The result resembles a very useful diagram in mathematics called a Voronoi tessellation.

The exciting part is the boundary that formed between the regions intended to be separate cookies. The regions of space circumscribed around these boundaries (the "intended cookies") are called Voronoi cells. I drew the lines that approximately partition the area of the pan into Voronoi cells. You can also imagine the center of the balls of cookie dough that I placed in the pan before I put it in the oven, marked as red points that I will call *sites* \\(p_k\\).

In a Voronoi diagram, all points on these lines are equidistant from the two sites of the adjoining Voronoi cells. All points inside the regions circumscribed by these lines are thus closer to the site of that Voronoi cell than any other Voronoi cell sites.

This leads to the mathematical definition of a Voronoi cell or region \\(R_k\\) of a site \\(p_k\\) (the cookie centers) as all points \\(x\\) that are closer to site \\(p_k\\) than any other site:

$$R_k:=\{x : d(x,p_k) < d(x,p_j)$$ for all $$j \neq k\}.$$

Here, \\(d(x,p_k)\\) is notation for the distance between point \\(x\\) and site \\(p_k\\).

How are Voronoi cells useful? Consider a classic optimization problem called the Post Office Problem. A new city has just built 10 post offices. With the aim of reducing the cost of delivering mail, how can we optimally assign each residence a post office from which to receive mail?

Assuming that the density of residences is spatially uniform, we seek to assign each house to the nearest post office1. Thinking of the location of the post offices as sites \\(p_k\\), the solution to the optimization problem is to assign all houses in the Voronoi cell \\(R_k\\) to post office \\(k\\). This is because each point in the Voronoi cell \\(k\\) is by definition closest to post office \\(k\\) (located at \\(p_k\\)) than any other post office.

Another amusing story is that of a physician John Snow, who in London in 1854, suggested with a Voronoi diagram that Cholera was being spread by drinking water instead of through the air, as thought at the time. He plotted the Cholera cases on a map of London and imagined the water pumps as sites \\(p_k\\), drawing the Voronoi diagram of these sites. He noticed that the victims appeared within a Voronoi cell of a certain [infected] water pump. The assumption here is that people get their water primarily from the closest water pump. This suggested that instead Cholera is water-borne and identified the problematic water source [1].

In machine learning, the branch of artificial intelligence that enables self-driving cars and the recommendation algorithms of Netflix, one supervised classification algorithm uses the Voronoi network, called nearest-neighbor classification. Let's say Netflix has a vector of data about you, including your age, gender, and what movies you've watched/how you've rated them. This is some representation of you in higher dimensional space. One strategy for recommending your next movie might be to simply find the person that is "closest" to you in their database, see what movies that person likes (the nearest neighbor), and recommend these movies to you. This corresponds to finding the site \\(p_k\\) (representing the person most like you) in high dimensional space such that you lie in the Voronoi cell \\(R_k\\).

Finally, why did the cookie cake form a Voronoi diagram? I think that one can prove that baking cookies will form a Voronoi network by assuming that each cookie expands from its center at a constant, uniform rate and stops expanding when it meets the surface of another cookie. The points where the boundaries of the intended cookies meet will form the lines in the Voronoi diagram. My cookie cake is not a perfect Voronoi diagram because a) each cookie was not initially the same shape and b) the boundary of the pan does not allow for a radially symmetric cookie expansion.

1 The problem is realistically more complicated because mailmen must take roads, and these are not straight lines from the post office to the residences. Still, this may be a reasonable approximation.

[1] http://plus.maths.org/content/uncovering-cause-cholera


text:
### [CVE-2023-4447](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-4447)
![](https://img.shields.io/static/v1?label=Product&message=RapidCMS&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=%3D%201.3.1%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=CWE-89%20SQL%20Injection&color=brighgreen)

### Description

A vulnerability has been found in OpenRapid RapidCMS 1.3.1 and classified as critical. This vulnerability affects unknown code of the file admin/article-chat.php. The manipulation of the argument id leads to sql injection. The attack can be initiated remotely. The exploit has been disclosed to the public and may be used. The identifier of this vulnerability is VDB-237568.

### POC

#### Reference
No PoCs from references.

#### Github
- https://github.com/fkie-cad/nvd-json-data-feeds

repository: trickest/cve

gha_language: HTML

repo_name: trickest/cve


text:
# PHPEasyDeploy

Everytime you run this class, it will check for all your local files and folders and it will compare with the specified FTP, in order to see if there are some changes. If there are, it will automatically deploy the changes into your FTP (add file(s), edit file(s) or delete file(s)) so the environments will be exactly equal all the time.

## Options

Just include the file, set the options and you can easily deploy your local files to FTP.

* __NotAllowedRoutes__: Array with the path of file(s) you don't want to be deployed
* __DirToCompareWithFTP__: Local files path will get compared with the current FTP and find the differences
* __FTPDirectory__: The FTP Path to get compared with local files
* __FTPHost__: FTP Host (*example.com*)
* __FTPUser__: FTP User
* __FTPPassword__: FTP Password
* __ShowDebug__: It will show a debug history using the following method: `showDebugResults()`

## Using the Class

```php
<?php

/*
* Sometimes it takes a long time, we recommend to Set Time Limit to 0
*/

set_time_limit(0);
ini_set('max_execution_time', 0);

/*
* Include the class
*/

require_once('path/to/class.phpeasydeploy.php');

$deploy = new PHPEasyDeploy;

/*
* Set FTP Params to connect
*/

$deploy->FTPHost = "yourhost.com";
$deploy->FTPUser = "yourUser";
$deploy->FTPPassword = "yourPassword";

/*
* Set FTP Directory where you are going to compare it with your local files
*/

$deploy->FTPDirectory = "public_html/folder";

/*
* Show the debug results after its ending
*/

$deploy->ShowDebug = true;

/*
* Run the Class
*/

$deploy->equalEnvironments();

?>
```

## License

Copyright (c) 2017 Iván Prat (https://github.com/IvanPrat)

Licensed under the MIT License (http://www.opensource.org/licenses/mit-license.php)

repository: IvanPrat/PHPEasyDeploy

repo_name: IvanPrat/PHPEasyDeploy


text:
/events/:slug

As an unauthenticated user
I want to click 'Submit a proposal'
And be taken to the login page
So that I can either login or create a new account
And then be taken back to the page to submit my proposal.

events/:slug/proposals/new

As an authenticated user
I want to see general info about the event in the 'info bar'
And a form to submit my proposal that includes:
All necessary fields to fully describe and pitch my proposal,
An area for my bio, a link to the event guidelines in case I need to refer back to them,
And a 'Preview' tab, so that I may view my proposal in markdown as the reviewers will see it.

I also want to see both a 'Submit' and a 'Cancel' button at the bottom of the form.

/events/:slug/proposals/:id

Upon submitting my proposal
I want to be taken to a page where I see:
A thank you message informing me that I may update or leave a comment on my proposal and when to expect a response by.,
General event info,
An 'Edit' and 'Delete Proposal' button,
My proposal status and when it was last updated,
An area to leave comments for the review committee,
And an area that shows who the speakers are for my proposal and a button to invite other speakers.

repository: rubycentral/cfp-app

gha_language: Ruby

repo_name: rubycentral/cfp-app


text:
---
name: Bug Report
about: Report a problem you experienced with FIRRTL
labels: improvement=BugFix
---

### Checklist

- [ ] Did you specify the current behavior?
- [ ] Did you specify the expected behavior?
- [ ] Did you provide a code example showing the problem?
- [ ] Did you describe your environment?
- [ ] Did you specify relevant external information?

### What is the current behavior?

### What is the expected behavior?

### Steps to Reproduce

<!-- How can someone else reproduce the problem you're seeing? -->
<!-- It's very helpful to include a full example of a failing Chisel or FIRRTL program! -->
<!--  Please tell us a little about your environment -->

- Chisel Verions: <!-- e.g., 3.2.0 -->
- OS: <!-- e.g., Linux knight 4.4.0-92-generic #115-Ubuntu SMP Thu Aug 10 09:04:33 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux -->
- Verilator version: <!-- e.g., 4.008 -->

### External Information

<!-- Was this discussed anywhere else, e.g., Twitter, Gitter, StackOverflow? Provide direct links if available! -->

repository: chipsalliance/firrtl

gha_language: Scala

repo_name: chipsalliance/firrtl


text:
---
author: jake
---

This is a quick post about how to add validation of your `Puppetfile`, primarily if you are using the [control-repo](https://github.com/puppetlabs/control-repo) and r10k for deploying Puppet environments. This came about because I found myself entering incorrect syntax into this file on more than a one occasion. Additionally, there are no indications of any problem, even when importing environments in Foreman, so the only way to find out is by manually running r10k from the command line on the Puppet Server.

This assumes you are familiar with and already have puppet-rspec testing setup. If not, please see [Unit testing with rspec-puppet — for beginners](https://puppet.com/blog/unit-testing-rspec-puppet-for-beginners) to get started.

Here are the steps to get the validation going:

* Add `gem 'r10k', '>= 2.5.5'` to your `Gemfile`.
  * Note: I had to use version 2.5.5 or else I would encounter [Issue #659](https://github.com/puppetlabs/r10k/issues/659) when running the tests in Travis CI or GitLab CI, even though they would succeed locally.

* Add `sh "r10k puppetfile check Puppetfile" if File.file?('Puppetfile')` to a new or existing task in your `Rakefile`.

I am only a beginner Ruby user, so by all means I am open to improvements. Happy testing!

repository: genebean/jekyll-beanbag

extension: markdown

repo_name: genebean/jekyll-beanbag


text:
---
title: "Release Apache SkyWalking Rust 0.3.0"
date: 2022-07-21
author: SkyWalking Team
description: "Release Apache SkyWalking Rust 0.3.0."
---

SkyWalking Rust 0.3.0 is released. Go to [downloads](/downloads) page to find release tars.

## What's Changed
* Update README.md by @wu-sheng in https://github.com/apache/skywalking-rust/pull/24
* Improve errors. by @jmjoy in https://github.com/apache/skywalking-rust/pull/25
* Add tracer. by @jmjoy in https://github.com/apache/skywalking-rust/pull/26
* Move e2e to workspace. by @jmjoy in https://github.com/apache/skywalking-rust/pull/27
* Auto finalize context and span when dropped. by @jmjoy in https://github.com/apache/skywalking-rust/pull/28
* Add context capture and continued methods. by @jmjoy in https://github.com/apache/skywalking-rust/pull/29
* Bump to 0.3.0. by @jmjoy in https://github.com/apache/skywalking-rust/pull/30

repository: apache/skywalking-website

gha_language: CSS

repo_name: apache/skywalking-website


text:
## Object

### Summary

The `**Object**` constructor creates an object wrapper.

### Constructor

    // Object initialiser or literal
    { [ _nameValuePair1_[, _nameValuePair2_[, ..._nameValuePairN_] ] ] }

    // Called as a constructor
    new Object([_value_])

### Parameters

**`nameValuePair1, nameValuePair2, ... nameValuePair_N_`**

> Pairs of names (strings) and values (any value) where the name is separated from the value by a colon.

**`value`**

> Any value.

### Description

The `Object` constructor creates an object wrapper for the given value. If the value is [`null`][0] or [`undefined`][1], it will create and return an empty object, otherwise, it will return an object of a Type that corresponds to the given value. If the value is an object already, it will return the value.

When called in a non-constructor context, `Object` behaves identically to `new Object()`.

See also the [object initializer / literal syntax][2].

### Properties of the `Object` constructor

_For properties available on `Object` instances, see [Properties of Object instances][3]._

**`Object.length`**

> Has a value of 1\.

**[`Object.prototype`][4]**

> Allows the addition of properties to all objects of type Object.

### Methods of the `Object` constructor

_For methods available on `Object` instances, see [Methods of Object instances][5]._

**[`Object.assign()`][6] __**

> Creates a new object by copying the values of all enumerable own properties from one or more source objects to a target object.

**[`Object.create()`][7]**

> Creates a new object with the specified prototype object and properties.

**[`Object.defineProperty()`][8]**

> Adds the named property described by a given descriptor to an object.

**[`Object.defineProperties()`][9]**

> Adds the named properties described by the given descriptors to an object.

**[`Object.freeze()`][10]**

> Freezes an object: other code can't delete or change any properties.

**[`Object.getOwnPropertyDescriptor()`][11]**

> Returns a property descriptor for a named property on an object.

**[`Object.getOwnPropertyNames()`][12]**

> Returns an array containing the names of all of the given object's **own** enumerable and non-enumerable properties.

**[`Object.getOwnPropertySymbols()`][13] __**

> Returns an array of all symbol properties found directly upon a given object.

**[`Object.getPrototypeOf()`][14]**

> Returns the prototype of the specified object.

**[`Object.is()`][15] __**

> Compares if two values are distinguishable (ie. the same)

**[`Object.isExtensible()`][16]**

> Determines if extending of an object is allowed.

**[`Object.isFrozen()`][17]**

> Determines if an object was frozen.

**[`Object.isSealed()`][18]**

> Determines if an object is sealed.

**[`Object.keys()`][19]**

> Returns an array containing the names of all of the given object's **own** enumerable properties.

**[`Object.observe()`][20] __**

> Asynchronously observes changes to an object.

**[`Object.preventExtensions()`][21]**

> Prevents any extensions of an object.

**[`Object.seal()`][22]**

> Prevents other code from deleting properties of an object.

**[`Object.setPrototypeOf()`][23] __**

> Sets the prototype (i.e., the internal `[[Prototype]]` property)

### `Object` instances and `Object` prototype object

All objects in JavaScript are descended from `Object`; all objects inherit methods and properties from [`Object.prototype`][4], although they may be overridden. For example, other constructors' prototypes override the `constructor` property and provide their own `toString()` methods. Changes to the `Object` prototype object are propagated to all objects unless the properties and methods subject to those changes are overridden further along the prototype chain.

### Properties

**[`Object.prototype.constructor`][24]**

> Specifies the function that creates an object's prototype.

**[`Object.prototype.__proto__`][25] __**

> Points to the object which was used as prototype when the object was instantiated.

**[`Object.prototype.__noSuchMethod__`][26] __**

> Allows a function to be defined that will be executed when an undefined object member is called as a method.

**[`Object.prototype.__count__`][27] __**

> Used to return the number of enumerable properties directly on a user-defined object, but has been removed.

**[`Object.prototype.__parent__`][28] __**

> Used to point to an object's context, but has been removed.

### Methods

**[`Object.prototype.__defineGetter__()`][29] __ __**

> Associates a function with a property that, when accessed, executes that function and returns its return value.

**[`Object.prototype.__defineSetter__()`][30] __ __**

> Associates a function with a property that, when set, executes that function which modifies the property.

**[`Object.prototype.__lookupGetter__()`][31] __ __**

> Returns the function associated with the specified property by the [`__defineGetter__`][32] method.

**[`Object.prototype.__lookupSetter__()`][33] __ __**

> Returns the function associated with the specified property by the [`__defineSetter__`][34] method.

**[`Object.prototype.hasOwnProperty()`][35]**

> Returns a boolean indicating whether an object contains the specified property as a direct property of that object and not inherited through the prototype chain.

**[`Object.prototype.isPrototypeOf()`][36]**

> Returns a boolean indication whether the specified object is in the prototype chain of the object this method is called upon.

**[`Object.prototype.propertyIsEnumerable()`][37]**

> Returns a boolean indicating if the internal [ECMAScript DontEnum attribute][38] is set.

**[`Object.prototype.toSource()`][39] __**

> Returns string containing the source of an object literal representing the object that this method is called upon; you can use this value to create a new object.

**[`Object.prototype.toLocaleString()`][40]**

> Calls [`toString()`][41].

**[`Object.prototype.toString()`][41]**

> Returns a string representation of the object.

**[`Object.prototype.unwatch()`][42] __**

> Removes a watchpoint from a property of the object.

**[`Object.prototype.valueOf()`][43]**

> Returns the primitive value of the specified object.

**[`Object.prototype.watch()`][44] __**

> Adds a watchpoint to a property of the object.

**[`Object.prototype.eval()`][45] __**

> Used to evaluate a string of JavaScript code in the context of the specified object, but has been removed.

### Examples

### Example: Using `Object` given `undefined` and `null` types

The following examples store an empty `Object` object in `o`:

    var o = new Object();

    var o = new Object(undefined);

    var o = new Object(null);

### Example: Using `Object` to create `Boolean` objects

The following examples store [`Boolean`][46] objects in `o`:

    // equivalent to o = new Boolean(true);
    var o = new Object(true);

    // equivalent to o = new Boolean(false);
    var o = new Object(Boolean());

[0]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/null "The value null is a JavaScript literal representing null or an "empty" value, i.e. no object value is present. It is one of JavaScript's primitive values."
[1]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/undefined "The global undefined value property represents the value undefined. It is one of JavaScript's primitive types."
[2]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Object_initializer
[3]: https://developer.mozilla.orghttps://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype#Properties
[4]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype "The Object.prototype property represents the Object prototype object."
[5]: https://developer.mozilla.orghttps://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/prototype#Methods
[6]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/assign "The Object.assign() method is used to copy the values of all enumerable own properties from one or more source objects to a target object. It will return the target object."
[7]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/create "The Object.create() method creates a new object with the specified prototype object and properties."
[8]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperty "The Object.defineProperty() method defines a new property directly on an object, or modifies an existing property on an object, and returns the object."
[9]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperties "The Object.defineProperties() method defines new or modifies existing properties directly on an object, returning the object."
[10]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/freeze "The Object.freeze() method freezes an object: that is, prevents new properties from being added to it; prevents existing properties from being removed; and prevents existing properties, or their enumerability, configurability, or writability, from being changed. In essence the object is made effectively immutable. The method returns the object being frozen."
[11]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyDescriptor "The Object.getOwnPropertyDescriptor() method returns a property descriptor for an own property (that is, one directly present on an object, not present by dint of being along an object's prototype chain) of a given object."
[12]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertyNames "The Object.getOwnPropertyNames() method returns an array of all properties (enumerable or not) found directly upon a given object."
[13]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/getOwnPropertySymbols "The Object.getOwnPropertySymbols() method returns an array of all symbol properties found directly upon a given object."
[14]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/getPrototypeOf "The Object.getPrototypeOf() method returns the prototype (i.e. the value of the internal [[Prototype]] property) of the specified object."
[15]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/is "The Object.is() method determines whether two values are the same value."
[16]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/isExtensible "The Object.isExtensible() method determines if an object is extensible (whether it can have new properties added to it)."
[17]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/isFrozen "The Object.isFrozen() determines if an object is frozen."
[18]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/isSealed "The Object.isSealed() method determines if an object is sealed."
[19]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/keys "The Object.keys() method returns an array of a given object's own enumerable properties, in the same order as that provided by a for...in loop (the difference being that a for-in loop enumerates properties in the prototype chain as well)."
[20]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/observe "The Object.observe() method is used for asynchronously observing the changes to an object. It provides a stream of changes in the order in which they occur."
[21]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/preventExtensions "The Object.preventExtensions() method prevents new properties from ever being added to an object (i.e. prevents future extensions to the object)."
[22]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/seal "The Object.seal() method seals an object, preventing new properties from being added to it and marking all existing properties as non-configurable. Values of present properties can still be changed as long as they are writable."
[23]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/setPrototypeOf "The Object.setPrototype() method sets the prototype (i.e., the internal [[Prototype]] property) of a specified object to another object or null."
[24]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/constructor "Returns a reference to the Object function that created the instance's prototype. Note that the value of this property is a reference to the function itself, not a string containing the function's name. The value is only read-only for primitive values such as 1, true and "test"."
[25]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__proto__ "The __proto__ property of Object.prototype is an accessor property (a getter function and a setter function) that exposes the internal [[Prototype]] (either an object or null) of the object through which it is accessed."
[26]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__noSuchMethod__ "The __noSuchMethod__ property references a function to be executed when a non-existent method is called on an object."
[27]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__count__ "The documentation about this has not yet been written; please consider contributing!"
[28]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__parent__ "The documentation about this has not yet been written; please consider contributing!"
[29]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__defineGetter__ "The __defineGetter__ method binds an object's property to a function to be called when that property is looked up."
[30]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__defineSetter__ "The __defineSetter__ method binds an object's property to a function to be called when an attempt is made to set that property."
[31]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__lookupGetter__ "The __lookupGetter__ method returns the function bound as a getter to the specified property."
[32]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/defineGetter "The documentation about this has not yet been written; please consider contributing!"
[33]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/__lookupSetter__ "The __lookupSetter__ method returns the function bound as a setter to the specified property."
[34]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/defineSetter "The documentation about this has not yet been written; please consider contributing!"
[35]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/hasOwnProperty "The hasOwnProperty() method returns a boolean indicating whether the object has the specified property."
[36]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/isPrototypeOf "The isPrototypeOf() method tests for an object in another object's prototype chain."
[37]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/propertyIsEnumerable "The propertyIsEnumerable() method returns a Boolean indicating whether the specified property is enumerable."
[38]: https://developer.mozilla.org/en/docs/ECMAScript_DontEnum_attribute "ECMAScript_DontEnum_attribute"
[39]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/toSource "The toSource() method returns a string representing the source code of the object."
[40]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/toLocaleString "The toLocaleString() method returns a string representing the object. This method is meant to be overriden by derived objects for locale-specific purposes."
[41]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/toString "The toString() method returns a string representing object."
[42]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/unwatch "The unwatch() method removes a watchpoint set with the watch() method."
[43]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/valueOf "The valueOf() method returns the primitive value of the specified object."
[44]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/watch "The watch() method watches for a property to be assigned a value and runs a function when that occurs."
[45]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/eval "The Object.eval() method used to evaluate a string of JavaScript code in the context of an object, however, this method has been removed."
[46]: https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Boolean "The Boolean object is an object wrapper for a boolean value."


text:
US 2020 Election Results from New York Times
================

This repository provides access to New York Times election results on
the county level.

Every 12 hours it creates a new folder with the current date and time
and downloads election results.

Just check the `data` folder and retrieve the csv file you want.

![](images/us2020map.png)

![](images/kanye_map.png)


text:
# django-history-triggers

`django-history-triggers` is a Django application for installing database triggers
that automatically record inserts, updates, and deletes to model tables.

## Requirements

* Django 3.2+
* PostgreSQL or SQLite database

## Installation

`pip install django-history-triggers`

## Quick Start

1. Add `history` to your INSTALLED_APPS setting and migrate your database.
2. Add `history.middleware.HistoryMiddleware` to the end of your `MIDDLEWARE` setting.
3. Run `manage.py triggers enable` to install the trigger functions, or
   `manage.py triggers disable` to uninstall them. Neither will clear existing history
   data -- add a `--clear` option to do that.

## Settings

* `HISTORY_MODEL` (default: `"history.ObjectHistory"`)
* `HISTORY_IGNORE_APPS` (default: `["admin", "contenttypes", "sessions"]`)
* `HISTORY_MIDDLEWARE_IGNORE` (default: `[]`)
* `HISTORY_FILTER` (default: `"history.utils.default_filter"`)
* `HISTORY_REQUEST_CONTEXT` (default: `"history.utils.get_request_context"`)
* `HISTORY_ADMIN_ENABLED` (default: `True`)

## History Sessions

History is recorded within "sessions" that you can manage manually, either outside of
a web request context, or in place of or in addition to the included middleware. The
easiest way to manage a history session is via a context manager:

```python
from history import get_backend

def api_view(request):
    # You can pass extra fields to be stored for all history within a session.
    with get_backend().session(user=request.user, path=request.path):
        # All history inside here will have the same session_id and session_date.
        ...
```

## Custom History Model

The default `history.ObjectHistory` model is swappable by changing the `HISTORY_MODEL`
setting. If you need to define your own object history model (usually for tracking
custom fields or non-standard user info), be sure to inherit from
`history.models.AbstractObjectHistory`. If at all possible, do this early on to avoid
problems with migrations when changing `HISTORY_MODEL` after the initial migration.

## Filtering History

The `HISTORY_FILTER` setting allows you to fully customize which fields (or even whole
models) should be included in or excluded from history. It is implemented as a callable
that takes three parameters:

* The `django.db.models.Model` class being filtered
* The `django.db.models.fields.Field` instance in question
* The `history.models.TriggerType` being created

The filter should return `True` if the field should be included, and `False` if it
should be excluded. The default implementation (`history.utils.default_filter`) simply
includes any field except `BinaryField`s:

```python
def default_filter(model, field, trigger_type):
    return not isinstance(field, models.BinaryField)
```

Returning `False` for all fields of any given model has the effect of not tracking
history for that model:

```python
def filter_sensitive(model, field, trigger_type):
    return not issubclass(model, SensitiveDataModel)
```

Similarly, if you (for example) only wanted to record history for UPDATE statements:

```python
def updates_only(model, field, trigger_type):
    return trigger_type == TriggerType.UPDATE
```

## Management Commands

By default `django-history-triggers` does not override any of Django's management
commands that may perform database operations, such as `loaddata` or `migrate`. If you
need to run these commands with history triggers enabled, you can include the following
apps in your `INSTALLED_APPS` setting:

* `history.contrib.loaddata`
* `history.contrib.migrate`

The `HISTORY_LOADDATA_CONTEXT` and `HISTORY_MIGRATE_CONTEXT` settings control the
history session context for the respective command, for example:

```python
HISTORY_MIGRATE_CONTEXT = {"user": "system"}
```

repository: imsweb/django-history-triggers

repo_name: imsweb/django-history-triggers


text:
# Aspergillus multiplicatus Yaguchi, Someya & Udagawa, 1994 SPECIES

#### Status
SYNONYM

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
Mycoscience 35(4): 310 (1994)

#### Original name
Aspergillus multiplicatus Yaguchi, Someya & Udagawa, 1994

### Remarks
null

repository: mdoering/backbone

path: /life/Fungi/Ascomycota/Eurotiomycetes/Eurotiales/Trichocomaceae/Neosartorya/Neosartorya multiplicata/ Syn. Aspergillus multiplicatus/README.md

repo_name: mdoering/backbone


text:
# edat-pgx - Postgres stores for edat

## Installation

    go get -u github.com/stackus/edat-pgx

## Usage Example

    import "github.com/stack/edat-pgx"

    conn, _ := pgxpool.Connect(ctx, "your-connection-string")

    // Create a store for aggregate events using the pool connection
    eventStore := edatpgx.NewEventStore(conn)

    // Create a store using a session client that uses a pgx.Tx from context
    client := edatpgx.NewSessionClient()
    eventStore := edatpgx.NewEventStore(client)

## Prerequisites

Go 1.16

## Features

Stores accept `*pgx.Conn`, `*pgxpool.Pool`, `pgx.Tx` and `edatpgx.Client` for clients. Middleware will accept `*pgxpool.Pool` only.

- Session Client `NewSessionClient()`
- Aggregate Event Store `NewEventStore(client, ...options)`
- Outbox Message Store and Producer `NewMessageStore(client, ....options)`
- Saga Instance Store `NewSagaInstanceStore(client, ...options)`
- Aggregate Snapshot Store `NewSnapshotStore(client, ...options)`
- Message Receiver Session Middleware `ReceiverSessionMiddleware(*pgxpool.Pool, log.Logger)`
- Web Request Session Middleware `WebSessionMiddleware(*pgxpool.Pool, log.Logger)`
- Grpc Request Session (Unary) Interceptor `RpcSessionUnaryMiddleware(*pgxpool.Pool, log.Logger)`

## TODOs

- Documentation
- Tests, tests, and more tests

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License

MIT

repository: stackus/edat-pgx

repo_name: stackus/edat-pgx


text:
# Reporting a vunerability
In order to report a vunerability, ***do not make an issue or a pull request***. Either message me on my Discord or my <a<EMAIL_ADDRESS>and be as precise about the vunerability as possible.

I'll work on fixing it as soon as possible

Also, vunerabilities should be something that could really damage a person's entire server, which have this plugin, or use this plugin as a vendor to attack/gain access to a server containing this plugin


text:
Contributions are greatly appreciated, and Pull Requests are always welcome!

When contributing, please take note of existing coding style, particularly the use of 4-space soft tabs for indentation, and a trailing linebreak at the end of files.

A .editorconfig file is included, please make use of it if your code editor supports it.


text:
# Wire Type
## The language agnostic structured data serialization protocol

Wire Type provides a simple, language neutral method of defining structured data serialization protocols. A common intermediate definition language, or IDL, document is created and used to produce language specific implementations of the de/serialization logic required to read and/or write the structured data.

## License

This project uses the [MIT License](LICENSE.txt).

repository: whoisj/wiretype

repo_name: whoisj/wiretype


text:
# bus1-rs

[![Build Status](https://travis-ci.org/bus1-rust/bus1-rs.svg?branch=master)](https://travis-ci.org/bus1-rust/bus1-rs)

Wrapper around the bus1 IPC for Linux.

This project is unstable and will change to match upstream bus1 changes.

The currently exposed API is incomplete and probably not safe.

## bus1 setup

Tested inside a Fedora 24 virtual machine with a 4.8 Linux kernel.

```
$ git clone https://github.com/bus1/bus1.git
$ cd bus1
$ make
$ sudo insmod ipc/bus1/bus1.ko
```

## How to build, test, generate the documentation

```
$ cargo build
$ cargo test
$ cargo doc
```

## License

Licensed under the terms of both the MIT license and the Apache License
(Version 2.0).

gha_language: Rust


text:
Checks for trailing commas in attribute declarations, such as
`#attr_reader`. Leaving a trailing comma will nullify the next method
definition by overriding it with a getter method.

# Examples

```ruby

# bad
class Foo
  attr_reader :foo,

  def bar
    puts "Unreachable."
  end
end

# good
class Foo
  attr_reader :foo

  def bar
    puts "No problem!"
  end
end
```

[Source](http://www.rubydoc.info/gems/rubocop/RuboCop/Cop/Lint/TrailingCommaInAttributeDeclaration)

repository: codacy/codacy-rubocop

gha_license_id: NOASSERTION

repo_name: codacy/codacy-rubocop


text:
# Commands

This site describes all available Commands in NodeOS. At the moment there are not many commands but they can be extended by NPM Or you create your own commands.

This list is helpful for Linux beginners, on the list below you find the Name and the description for the corresponding command.

## List of Commands

- `cat` - is one of the most frequently used commands on Unix-like operating systems. It has three related functions with regard to text files: displaying them, combining copies of them and creating new ones.
- `cp` - is an internel command of a unix shell to copy files.
- `davius` - Davius is a HTTP/WebDAV server that offer the content from the filesystem.
- `env` - is a unix command, that shows the environment variables when called with no arguments or it starts a program in another environment without changing the variables of the active one.
- `ln` - is a standard Unix command utility used to create a hard link (link) or a symbolic link (symlink) to an existing file.
- `ls` - is a command to list files in Unix and Unix-like operating systems.
- `man` - is used to format and display man (or manual) pages
- `mkdir` - is used to create a new folder
- `mv` - is used to move files or folders
- `node` - This is the node binary
- `npm` - is NodeOS's package Manager (like: pacman (Arch); yaourt (Arch); apt-get (Debian/Ubuntu))
- `nsh` - is the shell of NodeOS (both "no shell" and "node shell" accurately describe nsh)
- `pwd` - Returns the current working directory
- `rm` - is a basic UNIX command used to remove objects such as files, directories, device nodes, symbolic links, and so on from the filesystem.
- `sh` - is a command language interpreter that shall execute commands read from a command line string, the standard input, or a specified file.
- `wget` - is a computer program that retrieves content from web servers.
- `ip` - The `ip` command is similar to ifconfig, but more powerful and is intented to be a replacement for it.
- `ifconfig` - stands for "interface configuration". It is used to view and change the configuration of the network interfaces on your system.
- `pstree` - pstree shows running processes as a tree. The tree is rooted at either pid or init if pid is omitted.
- `performance` - is a benchmark tool to check the speed of some (javascript?) functions
- `loadtest` - Runs a load test on the selected HTTP or WebSockets URL.
- `testserver-loadtest` - This command will show the number of requests received per second, the latency in answering requests and the headers for selected requests.
- `node-ntp-client` - This binary implements the NTP Protocol which gets the Network time over a specific Server (like 'pool.ntp.org')

repository: ichit/NodeOS

repo_name: ichit/NodeOS


text:
---
id: exalted
title: Exalted
---

# Exalted

The rain runs down my window
and, with it, the will to write again,
to recite the gratitude you shared
after telling me your life,
for what is so much time apart
to true companions,
here to bear the Trust together?

I know it does not matter,
though I wonder if they'll see,
how one morning can make up
for a thousand nights of terror,
the error of my ways made right
by listening to one committed life,
lit up with the simple joy of being heard.

#### Traces

[Heart of Gold](https://www.youtube.com/watch?v=73_4Yx5Mcc8 "Pett Level")

[Scent of Jasmin](https://www.youtube.com/watch?v=m0819AFk_7I "Faran Ensemble")

repository: andytudhope/living-blue-book

repo_name: andytudhope/living-blue-book


text:
## i18n Eslint plugin
Use in conjunction with [Babel i18n plugin](https://github.com/Yesplan/babel-plugin-i18n).

This plugin warns about wrong usages of the `i18n` function or tagged template.
For example, the expression ``i18n(`A template literal to be translated`)`` will receive a warning that it is better
to use the tagged template version of `i18n` when using a template literal as an argument.

Moreover, when the `i18n` function is called with anything else than a String Literal, the tool will give a warning as well.
This to avoid that some strings are lost in translation, e.g. code using `i18n(aVariable)` should explicitly define translations for all possible value of `aVariable`.


text:
[![Release](https://jitpack.io/v/AndreyRusSprint/ThreeStateSwitch.svg)](https://jitpack.io/#AndreyRusSprint/ThreeStateSwitch)

## ThreeStateSwitch

A simple three-state switch view for Android.

**Please Note:** This library has not been fully tested, so use with a little caution, and submit an issue or better, a pull request if you notice any issues at all.

**Project Setup and Dependencies**
- MinSDK 14

**Highlights**
- supports showing text on both sides of view
- supports customization in color or size

# Preview

![](https://raw.githubusercontent.com/AndreyRusSprint/ThreeStateSwitch/master/assets/demo.gif)

# Setup
## 1. Provide the gradle dependency

Add it in your root build.gradle at the end of repositories:
```gradle
allprojects {
	repositories {
		...
		maven { url "https://jitpack.io" }
	}
}
```
Add the dependency:
```gradle
dependencies {
	compile 'com.github.AndreyRusSprint:ThreeStateSwitch:1.1.0'
}
```

## 2. How to use

Add the ThreeStateSwitch in your layout file and customize it the way you like it.
```xml
<andreyrussprint.threestateswitch.ThreeStateSwitch
        android:id="@+id/threeStateSwitch"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:background_middle_color="@android:color/darker_gray"
        app:background_left_color="@android:color/holo_red_light"
        app:background_right_color="@android:color/holo_green_light"
        app:text_selected_left_color="@android:color/holo_red_light"
        app:text_selected_right_color="@android:color/holo_green_light"
        app:text_normal_size="36sp"
        app:text_selected_size="36sp"
	app:text_left="-"
	app:text_right="+"
/>
```
You can set a listener for state changes
```java
threeStateSwitch.setOnChangeListener(new ThreeStateSwitch.OnStateChangeListener() {
            @Override
            public void onStateChangeListener(SwitchStates currentState) {
                Toast.makeText(MainActivity.this, currentState.toString(), Toast.LENGTH_SHORT).show();
            }
});
```
Get the current state.
```java
// state = LEFT_STATE  MIDDLE_STATE  RIGHT_STATE
threeStateSwitch.getState();
```
## attributes

| Name | Type | Default | Description |
|:----:|:----:|:-------:|:-----------:|
|background_left_color|Color|#cc2900|Switch background color when left state selected|
|background_right_color|Color|#5ab72e|Switch background color when right state selected|
|background_middle_color|Color|#bfbfbf|Switch background color when middle state selected|
|text_normal_color|Color|#646464|Text color when middle state selected|
|text_selected_left_color|Color|#cc2900|Left text color when left state selected|
|text_selected_right_color|Color|#5bb434|Right text color when right state selected|
|text_left|String||Text to the left of switch|
|text_right|String||Text to the right of switch|
|text_normal_size|Dp or Sp|16sp|Text size when middle state selected|
|text_selected_size|Dp or Sp|16sp|Text size when left or right state selected|

# Bugs and features

For bugs, feature requests, and discussion please use GitHub Issues.

# Participants

Developed by:
* Abbas Oveissi - [@abbas_oveissi](https://twitter.com/abbas_oveissi)

Improved by:
* AndreyRusSprint - [@andreyrussprint](https://t.me/andreyrussprint)

# License

    Copyright 2017 Abbas Oveissi

    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.

repository: AndreyRusSprint/ThreeStateSwitch

gha_language: Java

repo_name: AndreyRusSprint/ThreeStateSwitch


text:
# Blockchain's PrAgmatic  Knowledge Explorer  (BAKE)

BAKE is a tool for bootstrapping knowledge of tools being used in Blockchain-based projects on top of Neo4J Graph Database. In BAKE, you can register new information through exposed JSON APIs or through importing fixture/predefined-csv format in CLI. You can explore the data through exposed JSON APIs or through Neo4J clients.

## Getting started

To set up and configure the tool, please ensure the following packages and configuration are prepared:
- Python 3.8.0
- Docker or Neo4J database server (tested with 3.5.14)

### Starting neo4j host

Execute `docker run -p=7474:7474 -p=7687:7687 --volume=data:/data --volume=logs:/logs neo4j:3.5.14` to start the docker server locally.

The new neo4j via Docker would need to setup new pass word. To setup, visit neo4j at `localhost:7474` and fill username and password as: `neo4j` and `neo4j`, and then fill in new password `123123123`.

### Prepare and start the server

1. Exec `pyenv virtualenv 3.8.0 bake` (alternatively, following other ways to setup local virtualenv)
2. Exec `pip install -r requirements.txt`
3. Exac `python manage.py migrate`
3. Exec `python manage.py install_labels` to install/apply labels to neo4j DB
5. Exec `python manage.py runserver <IP_ADDRESS>:8080`
6. Access API docs at `http://localhost:8080/api/docs/`

### Directory structure

The source code consists of the following main folders:

- `bake/bake`:
  - `wsgi.py` consists of wsgi app configuration
  - `settings.py` app settings and connecting URL definition to Neo4J DB
- `bake/core`:
  - `management/commands`: consists of current CLI scripts and new commands can be added here
  - `migrations`: for app management database migrations (not needed for the current version)
  - `models.py`: ORM wrappers definition for Neo4J objects
  - `serializers.py`: JSON Serializer for ORM wrapper, then being used in Rest APIs
  - `urls.py`: URL mappers
  - `utils`: utility functions for reuse inside app
  - `views.py`: data manipulation and controlling logic
- `data.csv`: data collected from respondents for boostrapping with real use cases
- `fixtures.json`: pre-defined generic data for bootstrapping generic data
- `requirements.txt`: python packages used in BAKE
- `fabfile.py`: deployment script

## Staging/Production deployment

The following setting has been used to deploy staging-like version.

### Prerequisites

- Neo4J Graph Database 3.5.14
- Python 3.8.0
- Nginx
- Ubuntu 18.04
- Gunicorn
- Ports opened at `80` for APIs and `7474` for Neo4J connection

### Init the server configuration

#### Steps

```
sudo apt install python3.8
sudo apt-get install python3-pip
pip3 install virtualenv virtualenvwrapper

mkdir bake
cd bake
mkvirtualenv -p python3.8 venv
workon venv
git clone git@github.com:rdsea/kalbi.git ./repo
cd repo/bake
pip install -r requirements.txt
python manage.py migrate

sudo vim /etc/systemd/system/bake.service # and use the correct configuration template
sudo vim /etc/systemd/system/bake.socket # and use the correct configuration template
sudo systemctl daemon-reload
sudo systemctl enable bake.socket
sudo systemctl enable bake.service
sudo systemctl start bake.socket
sudo systemctl start bake.service

sudo vim /etc/nginx/site-enabled/bake # and use the correct configuration template

# The following should be run when there is new update
NEO4J_BOLT_URL=correct_URL_goes here python manage.py install_labels
NEO4J_BOLT_URL=correct_URL_goes here python manage.py seed
NEO4J_BOLT_URL=correct_URL_goes here python manage.py import

```

#### Server configuration file templates
Nginx

```
server {
    listen 80;
    server_name ts.reversely.fi;

    location = /favicon.ico { access_log off; log_not_found off; }
    location /static/ {
        root /home/deploy/bake/repo/bake;
    }

    location / {
        include proxy_params;
        proxy_pass http://unix:/run/bake.sock;
    }
}
```

Systemd BAKE service

```
[Unit]
Description=bake daemon
Requires=bake.socket
After=network.target

[Service]
User=deploy
Group=www-data
Environment="NEO4J_BOLT_URL=correct url"
WorkingDirectory=/home/deploy/bake/repo/bake
ExecStart=/home/deploy/.envs/venv/bin/gunicorn \
          --access-logfile - \
          --workers 2 \
          --bind unix:/run/bake.sock \
          bake.wsgi:application

[Install]
WantedBy=multi-user.target
```

Systemd BAKE socket

```
[Unit]
Description=bake socket

[Socket]
ListenStream=/run/bake.sock

[Install]
WantedBy=sockets.target
```

### Running the deployment

Make sure:
- the public key is setup in the server
- `fabfile.py` use the correct IP address

Exec `fab dd-stag`

### Running the load tests

In order to run the load tests, we need  Apache JMeter. After downloading, we can load the test plan at `bake.jmx`.

Notes:
- The API endpoint should be confirmed before testing
- The Bolt connection (Neo4J connection) should be confirmed before testing

## FAQs

1. Server configuration

```
# socket and services
etc/systemd/system/bake.socket
etc/systemd/system/bake.service
# nginx configuration
/etc/nginx/sites-enabled/bake

```

2. Applying new labels

`NEO4J_BOLT_URL='bolt://neo4j:123123123@localhost:7687' python manage.py install_labels`

3. How to register/update information in the server

Script to generate static data:

```
python manage.py seed
```

Script to import from survey:
```
python manage.py import
```

4. Changing Neo4J password via CLI

Not locally or in environment that CLI is the only possible way, use the following command to update password:

```
curl -H "Content-Type: application/json" -H "Authorization: Basic `echo -n 'neo4j:old password' | base64`" -XPOST -d '{"password":"new password"}' -I http://localhost:7474/user/neo4j/password
```

## Built With

* [Python](https://www.python.org/) - Runtime Environment
* [Pip](https://pypi.org/project/pip/) - Python package installer
* [Django](https://www.djangoproject.com/) - Web framework
* [Swagger](https://swagger.io/) - API documentation
* [Neo4J](https://neo4j.com/)
* [Docker](https://www.docker.com/)
* [Apache JMeter](https://jmeter.apache.org/)

## License
Copyright 2019-, by Service Engineering Analytics team (http://rdsea.github.io/).
Licensed under the Apache License, Version 2.0 (http://www.apache.org/licenses/LICENSE-2.0).

repository: DxTa/blockchainbenmarkservice

repo_name: DxTa/blockchainbenmarkservice


text:
# Sublime Text syntax highlighting for .conf files

[![Build Status](https://travis-ci.org/shakeelmohamed/sublime-splunk-conf-highlighting.svg)](https://travis-ci.org/shakeelmohamed/sublime-splunk-conf-highlighting)

Sublime Text is awesome! But, there's no great way to get syntax highlighting for a Splunk .conf file... until now!

**It works with Sublime Text 2 & 3!**

### Before

![before](before.png)

### After

![after](after.png)

## Installation

* Install it from [Package Control](https://packagecontrol.io/) - search for `Splunk Conf File Syntax Highlighting`

### Manual Installation

* Clone the repo
* `cd sublime-splunk-conf-highlighting`

#### Sublime Text 2

* `cp splunk-conf.tmLanguage ~/Library/Application\ Support/Sublime\ Text\ 2/Packages/user/splunk-conf.tmLanguage`

#### Sublime Text 3

* `cp splunk-conf.tmLanguage ~/Library/Application\ Support/Sublime\ Text\ 3/Packages/user/splunk-conf.tmLanguage`

## Patterns

Patterns are used to identify some part of a file.

Patterns used by this package:

* `^# DO NOT EDIT THIS FILE\\!$` - marks any lines as invalid if they are `# DO NOT EDIT THIS FILE!`
* `^#.*$` - marks any lines that start with `#` as a comment
* `^\\[.*\\]$` - marks any line starting with `[` and ending with `]` as a stanza
* `^[\\w+\\.\\-\\:]+` - marks the beginning of a line as a conf key; defined by any whitespace, alphanumeric, `-` or `:` characters
* `=` - marks any `=` as an equals sign

Patterns have 3 main attributes:

* `match` (or, `begin` and `end`): regex patterns
* `name`: a `TextMate` language grammar group, `comment.line` for an inline comment
* `comment`: a comment about the pattern

## Resources

* This TextMate [Language Grammars guide](https://manual.macromates.com/en/language_grammars#naming_conventions) is really helpful for figuring out what name to use for each rule.

## Development Notes

There are 2 important files here:

* `splunk-conf.YAML-tmLanguage` - The `AAAPackageDev` package compiles this to the following, this YAML file is much easier to use
* `splunk-conf.tmLanguage` - This is a TextMate language definition file in XML format. SublimeText uses this format, it's a necessary evil.

* Install package control if you haven't already
* cmd + shift + P (Mac) or ctrl + shift + P (Windows)
    - Install package
    - AAAPackageDev
* Open `splunk-conf.YAML-tmLanguage`
* cmd + B should update `splunk-conf.tmLanguage`, make a small change and see if it worked. If not, play with your build system settings under Tools -> Build System
* During development you'll need to constantly copy the `splunk-conf.tmLanguage` into your Sublime Text package folder, like so: `cp splunk-conf.tmLanguage ~/Library/Application\ Support/Sublime\ Text\ 3/Packages/user/splunk-conf.tmLanguage`
* If something doesn't seem to update, quit & reopen Sublime Text and it should work.


text:
# στρουθίον, ου, τό.

<!-- Status: S2=NeedsReview -->
<!-- Lexica used for edits: BDAG LN FFM BN LSJM MM   -->

## Word data

* Strongs: G47650.

* Alternate spellings:

* Principle Parts:

* Part of speech:

[Noun](http://ugg.readthedocs.io/en/latest/noun.html).

* Instances in the New Testament: 4.

* All Scriptures cited: Yes.

## Etymology:

* LXX/Hebrew glosses:

in LXX chiefly for [צִפּוֹר](//en-uhl/H6833) ;

* Time Period/Ancient Authors:

* Related words:

* Antonyms for all senses:

* Synonyms for all senses:

## Senses:

### Sense  1.0:

#### Definition:

a little sparrow

#### Glosses:

a sparrow

#### Explanation:

The term is a diminutive of στρουθός (sparrow) and is intended by Jesus to show how God cares even for the smallest, least significant of His creatures

#### Citations:

[Matt 10:29](mat 10:29), [31](mat 10:31), [Luke 12:6-7](luk 12:6-7).

repository: mandolyte/uw-obsidian

repo_name: mandolyte/uw-obsidian


text:
---
layout: default
title: JAMS - Examples
permalink: /examples
---

Below are examples for each modules and concept setups. The examples for modules will be specific for that module's usage. The examples for concepts will be listed from simplest to more complex setups.

You should start with per modules first as there will be tutorials on how to use the application's interface as well.

As always, remember to turn your volume down.

# Per Modules

* SineOscillator
	* Frequency Input [OPEN](./app#load#/jams/sineosc01.json)
	* Phase Input / Phase Modulation [OPEN](./app#load#/jams/sineosc02.json)
* Arithmetic Operations [OPEN](./app#load#/jams/arithmetic.json)
* Clock & Clock Divider & Sequencer16
	* Using absolute time T (in Seconds) [OPEN](./app#load#/jams/clock01.json)
	* Using pulses [OPEN](./app#load#/jams/clock02.json)
* Note2Freq [OPEN](./app#load#/jams/note2freq.json)
* Switch [OPEN](./app#load#/jams/switch.json)
* LinearAD [OPEN](./app#load#/jams/linearad.json)
* Sampler [OPEN](./app#load#/jams/sampler.json)
* Flange [OPEN](./app#load#/jams/flange.json)
* Scopes [OPEN](./app#load#/jams/scopes.json)
* Quad [OPEN](./app#load#/jams/quad.json)

# Per Concepts

* Complex SineOsc Routing [OPEN](./app#load#/jams/concepts/complexRouting.json)
* Kickdrum [OPEN](./app#load#/jams/concepts/kickDrum.json)
* Bass Sequence [OPEN](./app#load#/jams/concepts/bassSequence.json)
* Sample Chopping [OPEN](./app#load#/jams/concepts/sampleChopping.json)
* Chord Arp [OPEN](./app#load#/jams/concepts/chordArp.json)
* Delayed Melody [OPEN](./app#load#/jams/concepts/delayedMelody.json)
* MIDI arpeggio [OPEN](./app#load#/jams/concepts/midiArpeggio.json)

* Mixture 01 [OPEN](./app#load#/jams/concepts/mixture01.json)
* DigitalCat [OPEN](./app#load#/jams/concepts/digicat.json)

repository: khoin/JAMS

repo_name: khoin/JAMS


text:
# Commands

> DRAFT

## Command structure

Commands are defined in a tree like structure by specifying a set of command
sequences. The number and length of sequences is unlimited.

For example: Specifying the two sequences *A B X* and *A B Y* results
in a situation, where *A* must be followed by *B*, which must be followed
either by *X* or *Y*.

## Command types

TODO

## Default command

Defining a default command makes the usage of commands optional. If no command
is specified by the user, the default command is bound.

Moreover, it allows for defining command line interfaces with no commands.
In that case, a default command must be specified whereas the definition of
further *commands* can be omitted.

In contrast to regular commands, a default command can not have specific options.
This is because in that case, global and specific commands can not be distinguished
syntactically.

## Command overlap

Defining command sequences which overlap each other is possible. For example:

> A B C D and A B

Both "A B" and "A B C D" are legal command sequences.

### Double dash

A double dash "--" ca be used to explicitly terminate the command sequence in cases
where an ambiguous situation would arise, e.g.:

    $ myCommand A B -- value

By applying a double dash, the argument 'value' will not be interpreted as
a command but as a parameter.

## Command executors

Implementations of the *CommandExecutor* interface can be bound to each
terminating command. It can automatically be called by *CommandLineInterface*
in case a command sequence is specified by the end user which terminates with
the respective command.

## Abbreviation of commands

Commands specified on command line by the end user can be abbreviated. That
means they can be shortened as long as they keep unique for all commands on
that particular level.

repository: arthurpicht/cli

repo_name: arthurpicht/cli


text:
# NJTAPI

[![GoDoc](https://godoc.org/github.com/bamnet/njtapi?status.svg)](https://godoc.org/github.com/bamnet/njtapi)
[![Build Status](https://travis-ci.com/bamnet/njtapi.svg?branch=master)](https://travis-ci.com/bamnet/njtapi)
[![codecov](https://codecov.io/gh/bamnet/njtapi/branch/master/graph/badge.svg)](https://codecov.io/gh/bamnet/njtapi)
[![Go Report Card](https://goreportcard.com/badge/github.com/bamnet/njtapi)](https://goreportcard.com/report/github.com/bamnet/njtapi)
[![GitHub](https://img.shields.io/github/license/bamnet/njtapi)](https://github.com/bamnet/njtapi/blob/master/LICENSE)

NJTAPI is a Go library for accessing data about NJTransit Trains. It wraps the NJTransit HTTP API.

Features include:

*  Timetables and statuses of departures from each station.
*  Train status including location and stops.
*  List of all the train stations in the system.

See the [GoDoc](https://godoc.org/github.com/bamnet/njtapi) for full details.

## Installation

```go
import "github.com/bamnet/njtapi"
```

## API Access

Register with the [NJTransit Developer Portal](https://datasource.njtransit.com)
to get a username and password needed to call the API.

## Example Usage

```go
func main() {
	username := "your username"
	password := "your password"

	client := NewClient("http://njttraindata_tst.njtransit.com:8090/njttraindata.asmx/", username, password)
	station, err := client.StationData(context.Background(), "NY")
	if err != nil {
		log.Fatalf("StationData() error: %v", err)
	}
	fmt.Println("Departures from New York Penn Station")
	for _, departures := range station.Departures {
		fmt.Printf("Train to %s at %s", departures.Destination, departures.ScheduledDepartureDate)
	}
}
```

## Demo

Run [demo.go](demo/demo.go) for a working demo using a command like:

```shell
go run demo/demo.go --base_url="http://njttraindata_tst.njtransit.com:8090/njttraindata.asmx/" --username=<USERNAME> --password=<PASSWORD>
```

Note: Both of the samples above point to a _testing_ api server, not the production one.

repository: bamnet/njtapi

gha_language: Go

repo_name: bamnet/njtapi


text:
MYParallaxScrollView
====================

Parallax scrolling in iOS made easy!!

##Setup the project

- Open Xcode, create new project (iOS: Single View Application).
- Select MYViewController.xib and delete it (Move to trash)

- In MYAppDelegate.m, change

	```Objective-C
	self.viewController = [[MYViewController alloc] initWithNibName:@"MYViewController" bundle:nil];
	```

	to

	```Objective-C
	self.viewController = [[MYViewController alloc] init];
	```

- Download this repo as zip, drag the folders "MYParallaxScrollView" and "Help files" into the project (sidebar)
- Check "Copy items.." and "Create Groups..", hit return.
- Click your project name in the sidebar
- Make sure that portrait only is selected for now
- Scroll down to frameworks
- Press the + button and add the QuartzCore.framework.

MYViewController.m:

- At top:

	```Objective-C
	#import "MYParallaxScrollView.h"
	```

- Before viewDidLoad:

	```Objective-C
	MYParallaxScrollView *autumnboard;
	```

- Inside viewDidLoad:

	```Objective-C
	self.view = [[UIView alloc] init];
	self.view.backgroundColor = [UIColor whiteColor];
	self.view.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;

	// For iPhone 4 and 5 portrait
	CGSize size = [[UIScreen mainScreen] bounds].size;
	CGFloat width = MIN(size.width, size.height);
	CGFloat height = MAX(size.width, size.height)-20;
	```

- And now, initiate the scrollview! (Still in viewDidLoad)

	```Objective-C
	autumnboard = [[MYParallaxScrollView alloc]
		initInView:self.view
		frame:CGRectMake(0,0,width,height)
		// Optional, pass nil if you don't want a scaled-to-fit parallax bg-image
		backgroundImage:[UIImage<EMAIL_ADDRESS>	autumnboard.backgroundColor = [UIColor whiteColor];
	autumnboard.delegate = self;
	autumnboard.numberOfPages = 3;
	[autumnboard setPagingEnabled:YES];
	[self.view addSubview:autumnboard.pageControl];
	```

- Some other candies!

	```Objective-C
	// Set this delegate if you would like to...
	@property (retain) id parallaxDelegate;
	@protocol MYParallaxScrollViewDelegate <NSObject>
	@optional
	// ...do the parallax yourself! Just position your view in there!
	- (void)willLayoutSubviewsInScrollView:(MYParallaxScrollView*)scrollView;
	@end

	@property (nonatomic, readonly) UIImageView *backgroundImageView;
	@property (nonatomic) UIImage *backgroundImage;
	@property (nonatomic) int backgroundImageViewOffset;
	@property (nonatomic) CGFloat backgroundImageViewOffsetFactor;

	@property (nonatomic, readonly) UIPageControl *pageControl;

	// Short for content size
	- (CGFloat)cwidth;
	- (CGFloat)cheight;

	- (int)numberOfPages;
	- (int)currentPageIndex;
	- (void)setNumberOfPages:(int)nr;

	- (CGFloat)backgroundImageViewWidth;
	- (CGFloat)backgroundImageViewOriginXFromScrollX:(CGFloat)scrollX;
	- (CGRect)backgroundImageViewFrame;

	// Instead of the delegate, you could use a block!!!
	- (void)setUseWillLayoutSubviewsBlock:(BOOL)useIt;
	- (void)setWillLayoutSubviewsBlock:(void (^)(CGPoint offset, MYParallaxScrollView *scrollView))block;

	// These ones will do [inView addSubview:self] them self
	- (id)initInView:(UIView*)inView frame:(CGRect)frame backgroundImage:(UIImage*)bgImg;
	- (id)initInView:(UIView*)inView frame:(CGRect)frame willLayoutSubviewsBlock:
		(void (^)(CGPoint offset, MYParallaxScrollView *scrollView))block;
	```

 - Run and enjoy! :)

##UIView+myExt.h/m

I've also included UIView+myExt.h/m that has some nice stuffs in it. If you import it to a file, you will be able to use these cool things:

```Objective-C
// Short for view.frame.origin.x, settable!!
view.x = 10;
view.y
view.width
view.height

// CGRectMake(0, 0, self.width, self.height);
view.frameWithoutOrigin
// Will just change width and height
view.frameWithoutOrigin = rect;

// YES! You will finally be able to take a retina/non-retina
//  snapshoot of the view, in less than one line!
- (UIImage*)captureViewAsImage;

// Moahaha! The subviews will no longer feel touches!! (Usable for like image overlays)
view.forwardsTouches = NO;

// Easiest way to make non-rectangle touchable buttons! (or for like image overlays)
- (void)setPointInsideBlock:(BOOL (^)(CGPoint point, UIEvent *event))pointInside;
```

##UIImage+Crop.h/m

Apparently, the captureViewAsImage method required a crop method I had made in another extension when capturing the visible area of a scrollview. So here it is, included in the folder "Help files":

```Objective-C
- (UIImage *)imageCroppedToRect:(CGRect)rect;
- (UIImage *)imageWithCornerRadius:(CGFloat)radius;
```

Pretty self-explainable :)

##More

The project is licenced under the MIT Licence included in this repo. If you plan to make an app of it, i would be glad if you told me about it!
This text was written 31 july 2013, but the code was originally made by me 28 april, 2013.

Happy coding!

// Leonard Pauli


text:
Shellplay Changelog
=========================

v0.1.8 - 2015-12-09
-------------------
- fix clear screen on linux
- fix command execution to use $SHELL rather than bash
  for FreeBSD comopat

v0.1.7 - 2015-11-23
-------------------
- create config dir if it does not exist (first time launch)
- add more code documentation
- update dependencies

v0.1.6 - 2014-08-19
-------------------
- fix display of session prompt
- better quit on bash for shellplayer

v0.1.5 - 2014-08-19
-------------------
- better initial prompt for html version

v0.1.4 - 2014-08-19
-------------------
- optimize html export
- fix display of prompts in html export

v0.1.3 - 2014-08-19
-------------------
- html export rudimentary but functional

v0.1.2 - 2014-08-18
-------------------
- fix recording that was broken in 0.1.1
- add experimental html export

v0.1.1 - 2014-08-17
--------------------
- remove the need for input of prompt and timeformat if they are included in the session

v0.1.0 - 2014-08-17
----------------------
- first version seems ok, it's running and has been used on the field

v0.0.13 - 2014-08-15
-----------------
- add a `x` command in recorder to cancel a record
- add a default prompt at config creation
- improve the session selection menu to include remote recording
- add a 'type enter to begin' at the first screen

v0.0.12 - 2014-08-15
-----------------
- fix recorder to take account of `cd` properly
- fix recorder command execution

v0.0.11 - 2014-08-14
------------------
- made possible to open a remote json file with `shellplay http://example.com/something.json`
- moved config vars (prompt and timeformat) to session file

v0.0.10 - 2014-08-13
-------------------
- added a `shellcat` command to merge sessions

v0.0.9 - 2014-08-13
------------------
- fix the fix of creation of config dir

v0.0.8 - 2014-08-13
------------------
- fix creation of the config dir at first launch

v0.0.7 - 2014-08-13
-------------------
- fix exec of commands in shellplay
- implement a `p` command in play mode for switching to previous screen
- added management of bash escape char for colorization in output texts

v0.0.6 - 2014-08-13
--------------------
- save json session in pretty format for manual intervention
- chomp output so there is less spaces
- add a config param for setting time format on the elapsed time of last command
- fix display of playprompt
- improved styling on 'timespent' display

v0.0.5 - 2014-08-12
------------------
- add a `/` record prefix for clearscreen, works with iterm2 on mac, linux trick don't work yet
- add a `?` record prefix for faking output, in case of ssh connection for example
- add a `>` to change the prompt and a `>>` to switch prompt back and forth
- code is getting messy, it will be time to refactor the record into some classes soon

v0.0.4 - 2014-08-12
------------------
- add changelog link in the gemspec
- add a `##` record option for inhibiting display of the play prompt
- add a `d` record command to drop last screen

v0.0.3 - 2014-08-11
-------------------
- fix shellrecord that was broken after incomplete file renaming

v0.0.2 - 2014-08-10
---------------
- made recorder and player more or less working
- changed project name twice. First shellprez, then shreplay, finally shellplay rocks better

v0.0.1 - 2014-08-08
------------------
- just initial code


text:
# delta-scraper

IN EARLY DEVELOPMENT

[![PyPI](https://img.shields.io/pypi/v/delta-scraper.svg)](https://pypi.org/project/delta-scraper/)
[![CircleCI](https://circleci.com/gh/simonw/delta-scraper.svg?style=svg)](https://circleci.com/gh/simonw/delta-scraper)
[![Documentation Status](https://readthedocs.org/projects/delta-scraper/badge/?version=latest)](http://delta-scraper.readthedocs.io/en/latest/?badge=latest)
[![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/simonw/delta-scraper/blob/master/LICENSE)

Python library for scraping data sources and creating readable deltas.

For background, see [Scraping hurricane Irma](https://simonwillison.net/2017/Sep/10/scraping-irma/).

## Concepts

This library allows you to define _scrapers_, which are objects that know how to retrieve information from a source (usually a web API, but scrapers can be written to operate against HTML or other formats) and persist that data somewhere as JSON.

When a scraper fetches fresh information it has the ability to compare that data to the old data and use the difference to create a human-readable message.

See [disaster-scrapers](https://github.com/simonw/disaster-scrapers) and [disaster-data](https://github.com/simonw/disaster-scrapers) for some examples of this pattern in action.

## Basic usage

You can define new scrapers by subclassing `DeltaScraper`. Here's an example which scrapes a list of FEMA shelters.

    class FemaShelters(DeltaScraper):
        url = "https://gis.fema.gov/geoserver/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=FEMA:FEMANSSOpenShelters&maxFeatures=250&outputFormat=json"
        owner = "simonw"
        repo = "disaster-data"
        filepath = "fema/shelters.json"

        record_key = "SHELTER_ID"
        noun = "shelter"

        def fetch_data(self):
            data = requests.get(self.url, timeout=10).json()
            return [feature["properties"] for feature in data["features"]]

        def display_record(self, record):
            display = []
            display.append(
                "  {SHELTER_NAME} in {CITY}, {STATE} ({SHELTER_STATUS})".format(**record)
            )
            display.append(
                "    https://www.google.com/maps/search/{LATITUDE},{LONGITUDE}".format(
                    **record
                )
            )
            display.append("    population = {TOTAL_POPULATION}".format(**record))
            display.append("")
            return "\n".join(display)

repository: iTrauco/delta-scraper

repo_name: iTrauco/delta-scraper


text:
# DELANI STUDIO
#### A TECH COMPANY, 2021
#### By **CIAN**
## Description
Delani Studio is a new start-up company with talented programmers that are well versed in all the languages. Not even a year old yet but it has a huge client base.
## Setup/Installation Requirements
* Fork code to your repo.
* Git clone the code to your computer.
* OPen and update the code to your personal preference and test.
* Create a gh-pages and push it to your repo.
* When ready deploy site and check that your live link is working.

## Known Bugs
No bugs yet.
## Technologies Used
* HTML
* CSS
* Bootstrap
* jQuery

## Live link
https://cian747.github.io/delani-studio/

## Support and contact details
Want to collaborate? Do you have any query? Reach me on<EMAIL_ADDRESS>
### License

Copyright (c) 2021 **CIAN/CIKA**


text:
fp-burg
===============

## Team Members

1. Brian Burg<EMAIL_ADDRESS>
## Project: Test History

A healthy, passing test suite is the lifeblood of any large distributed software project. A developer can use accurate, robust tests to detect failure-inducing changes before faulty code is ever committed or shipped to customers. Despite everyone's best attempts, sometimes a test may regress: to unexpectedly no longer pass. Most regressions are caused by code changes, but in other cases, the test itself is unreliable due to nondeterminism, logic errors, or other unforeseen conditions. To ensure high test suite quality, a developer must diagnose test regressions by looking through thousands of historical test results for clues as to whether the code or the test are at fault.

This CSE 512 project investigates how visualizations can aid in diagnosing test regressions in the context of [WebKit](https://www.webkit.org), an open-source browser engine with many contributors and large test suite. With presently-deployed tools, investigating test regressions is difficult: WebKit's [existing dashboard for test history](http://webkit-test-results.appspot.com/dashboards/flakiness_dashboard.html) presents a series of a large tables with poor visual encodings, hard to use filters, and other deficiencies. These problems make it difficult to discover when a test started misbehaving, to determine problems are isolated to a specific platform or time range, or to answer other straightforward questions that a developer would ask to diagnose a test regression.

### Screenshot: Existing Dashboard

![Old dashboard](https://raw.githubusercontent.com/CSE512-15S/fp-burg/master/old-dash.png)

The output of this project is a redesigned dashboard prototype that uses small multiples and compact visual encodings to succinctly present the recent history of multiple tests. The main overview shows a grid of timelines whose contents are determined by the combination of testing platform (column) and test (row). Users can filter visible timelines according to criteria such as test name, file path, platform, expected result, or date range. Timelines are interactive, and more detailed views about the particular test or build run are shown on demand.

### New Dashboard: Single Test+Platform History

![Single Timeline](https://raw.githubusercontent.com/CSE512-15S/fp-burg/master/Mockups/Timeline.png)

### New Dashboard: Grid View

![Grid View](https://raw.githubusercontent.com/CSE512-15S/fp-burg/master/Mockups/Grid.png)

## Running Instructions

Access our visualization at http://cse512-15s.github.io/fp-burg/ or download this repository and open `dashboard/testhistory.html`.

Some things to try out in the visualization:

1. TODO

repository: burg/webkit-dashboard

repo_name: burg/webkit-dashboard


text:
---
title: "Edit DataTable records bound to Query API"
id: "edit-datatable-bound-to-queryapi"
sidebar_label: "Edit DataTable records bound to Query API"
---
---

Typically when the Data Table widget is bound to a query API, the Edit and Update operations are not supported by default. However, you can still achieve this functionality by customizing the Edit and Update properties using the following approach.

:::note
In this example, we are using an Employee table from the `HRDB` sample database.
:::

### Create a Query

1. Go to the database design and create a [query](/learn/app-development/services/database-services/working-with-queries#query-creation) to get the employee details.

### Create a Database API Variable

2. To create a **Database API** variable, go to [Variables](/learn/app-development/variables/variables), select **New Variable** and click **Database APIs**.

3. Select the `HRDB` database from the dropdown and choose the **API Type** as **Query APIs**. **Select Query** *[the executed-query](#create-a-query)* from the dropdown. Name the variable and click **Done**.

[![Query-variable-creation](/learn/assets/query-variable-creation.png)](/learn/assets/query-variable-creation.png)

### Create a Data Table

4. Drag and drop the [Data Table](/learn/app-development/widgets/datalive/datatable/data-table-basic-usage#configure-data-table) widget and bind the [Database API variable](#create-a-database-api-variable) created above.

### Configure Actions

5. Go to the Data Table's Advanced Settings, navigate to the **Actions** tab, and check the **Edit** action.

[![check edit action in datatable](/learn/assets/edit-action-check.png)](/learn/assets/edit-action-check.png)

### Create a Database CRUD Variable

6. Create another variable for the Employee table to update the records. To create a **Database CRUD** variable, go to [Variables](/learn/app-development/variables/variables), select **New Variable** and click **Database CRUD**.

7. Select the `HRDB` database from the dropdown and choose the **Employee** table (in this case). And, set the operation as **Update** from the dropdown. Name the variable and click **Done**.

![update record database crud](/learn/assets/update-record-database-crud.png)

### Configuring Events

8. Ensure to click the Data Table and navigate to the Events tab from the Properties panel. Go to the **On Record Update** event, and select *Javascript* from the dropdown.

[![onrecordupdate event](/learn/assets/onrecordupdate-event.png)](/learn/assets/onrecordupdate-event.png)

9. Go to the **Script** tab of the page, and write the following script to update the record in the **On Record Update** method.

:::note
The following example code will update the record.
:::

```js
Page.executeGetempdataTable1Rowupdate = function($event, widget, row) {
    // row data is the newly edited data
    // UpdateEmployeeData is the update variable of the employee table
    var lv = Page.Variables.UpdateEmployeeData;
    lv.updateRecord({
        row: {
            "empId": row.empId,
            "firstname": row.firstname,
            "lastname": row.lastname,
            "username": row.username
        }
    }, function(data) {
        // to remove the edit mode of the datatable widget after the edit action is performed.
        widget.hideEditRow();
    });
};

```

This way, you can customize the update action of the Data Table bound to the query variable.

repository: wavemaker/docs

repo_name: wavemaker/docs


text:
# winsvc

A thin wrapper around the Windows service functions.

Extracted from the next version of [Print Distributor](http://www.printdistributor.com).

Although .Net has some service control facilities I kept coming across gaps and complicating abstractions hence this project.

Note this project does not and will not allow you to create a service, only control and manage services.

Starting a service is as easy as:

```C#
    using (var scm = ServiceControlManager.OpenServiceControlManager(null, SCM_ACCESS.SC_MANAGER_ALL_ACCESS))
    using (var service = scm.OpenService("Your Service Name", SERVICE_ACCESS.SERVICE_ALL_ACCESS))
    {
        service.Start();
    }
```

repository: azkoss/winsvc

repo_name: azkoss/winsvc


text:
# Shrimp Tacos

> Based on [http://www.yummly.co/recipe/Honey-Lime-Shrimp-Tacos-1576139](http://www.yummly.co/recipe/Honey-Lime-Shrimp-Tacos-1576139)

<!-- {cts} rating=4; (User can specify rating on scale of 1-5) -->

Personal rating: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-solid-star: :fontawesome-regular-star:

<!-- {cte} -->

<!-- {cts} name_image=shrimp_tacos.jpg; (User can specify image name) -->

![shrimp_tacos.jpg](./shrimp_tacos.jpg){: .image-recipe loading=lazy }

<!-- {cte} -->

## Ingredients

### Shrimp

- [ ] 1 lb shrimp, peeled
- [ ] 1/4 cup olive oil
- [ ] 2.5 tbsp honey
- [ ] 1 lime, juiced
- [ ] 3 cloves garlic
- [ ] (optional) small slice of a jalapeño or pinch of red pepper flakes
- [ ] 1/2 tsp each of salt & pepper

### Tacos

- [ ] Hard corn or soft flour tacos, toasted
- [ ] Avocado
- [ ] Salsa
- [ ] Shredded Lettuce
- [ ] Jalapeño, sliced
- [ ] Rice
- [ ] Diced onion, tomato, etc.

## Recipe

- Whisk together the olive oil, honey, lime juice, garlic, salt, and pepper
- Simmer the sauce in a sauce pan for a few minutes, then add the shrimp
- Cook shrimp on one side until pink, then flip, and cook until just pink all over (~6 min)

repository: KyleKing/recipes

repo_name: KyleKing/recipes