text:
# NEW: Simulating and transporting Realtime event stream with Apache Kafka

This tutorial will show how geo-location information from trucks can be combined with sensors on roads which report real-time events like speeding, lane-departure, unsafe tailgating, and unsafe following distances. [**Apache Kafka**](http://kafka.apache.org/) can be used on the Hortonworks Data Platform to capture these data real-time events. In coming tutorials, we will persist them to different data stores/queue (HBase, HDFS, ActiveMQ) for further analysis.

[**Apache Kafka**](http://kafka.apache.org/) is an open source messaging system designed for:

  * Persistent messaging
  * High throughput
  * Distributed
  * Multi-client support
  * Real time
![Kafka Producer-Broker-Consumer](http://hortonassets.s3.amazonaws.com/mda/Screen+Shot+2014-07-08+at+9.24.54+PM.png)
Kafka Producer-Broker-Consumer

In this tutorial, you will learn the following topics:

  1. Install and Start Kafka on [Hortonworks Sandbox](http://hortonworks.com/products/hortonworks-sandbox/).
  2. Review Kafka and ZooKeeper Configs
  3. Create Kafka topics for Truck events.
  4. Writing Kafka Producers for Truck events.

## Prerequisites

A working Hadoop cluster : the easiest way to get a pre-configured and fully functional Hadoop cluster is to download the [Hortonworks SandBox](http://hortonworks.com/products/hortonworks-sandbox/).

## Tutorial

### Step 1:

**Login to Hortonworks Sandbox.**

After downloading the Sandbox and running the VM, login to Ambari using the URL [http://<IP_ADDRESS>:8080/](http://<IP_ADDRESS>:8080/).

The username and password is `admin` and `admin`.

### Step 2:

**Setup Kafka.**

  1. After login to Ambari, select Actions -> Add Service:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image01.png)

  2. Select Kafka from the list of Services and click Next:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image04.png)

  3. Keep clicking `Next` with the selcted defaults until you reach the following screen:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image07.png)

Add logs.dir = `/tmp/kafka-logs`

  4. Deploy

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image10.png)

  5. Check Progress

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image13.png)

After successful Start you may be asked to restart some dependent Services like Nagios. Please select the appropriate Services and click Restart.

4.Setting up Kafka on Sandbox with ZooKeeper.

![Single Broker based Kakfa cluster](http://hortonassets.s3.amazonaws.com/mda/Screen+Shot+2014-07-08+at+10.33.50+PM.png)

Kafka provides the default and simple ZooKeeper configuration file used for launching a single local ZooKeeper instance. Here, ZooKeeper serves as the coordination interface between the Kafka broker and consumers.

The important Zookeeper properties can be checked in Ambari as below:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image16.png)

Ensure the following value of clientPort under Ambari

clientPort=2181. By default ZooKeeper server listens on port number 2181.

Also verify if zookeeper service is running:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image19.png)

If this port 2181 is busy or is consumed by other processes, then you could change the default port number of ZooKeeper to any other valid port number.

In case zookeeper is not running, you can start the Zookeeper service from Ambari:

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image22.png)

### Step 3:

**Verify Kafka Broker.**

Verify the ‘zookeeper.connect’ parameter to point to port number 2181.

![](http://hortonassets.s3.amazonaws.com/mda/kafka/image25.png)

we will SSH in to follow the rest of the steps.

ssh<EMAIL_ADDRESS>-p 2222;

the password is hadoop

Check running java processes using the “jps” command.

This command should list Kafka and QuorumPeerMain

jps

![check Kafka running](http://hortonassets.s3.amazonaws.com/mda/Check+Kafka+Running.png)
check Kafka running

### Step 4:

`cd /usr/hdp/<IP_ADDRESS>-1084/kafka`

**Create Kafka topics for truck event.**

Execute this command to create Topics for ‘truckevent':

    bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic truckevent

Note: Sometimes Kafka does not listen to localhost, you may need to use IP instead.

Check if topic ‘truckevent’ was created successfully with the following command:

    bin/kafka-topics.sh --list --zookeeper localhost:2181

![Kafka Topics](http://hortonassets.s3.amazonaws.com/mda/Kafka+Topics.png)
Kafka Topics

### Step 5:

**Writing Kafka Producers for truck events.**

Producers are applications that create Messages and publish them to the Kafka broker for further consumption.

![Kafka Producers for truck events](http://hortonassets.s3.amazonaws.com/mda/Screen+Shot+2014-07-09+at+12.31.03+AM.png)
Kafka Producers for truck events

In this tutorial we shall use a Java API to produce Truck events.

The Java code in `TruckEventsProducer.java` will generate data with following columns:

     `driver_name` string,
     `driver_id` string,
     `route_name` string,
     `route_id` string,
     `truck_id` string,
     `timestamp` string,
     `longitude` string,
     `latitude` string,
     `violation` string,
     `total_violations` string

This Java Truck events producer code uses [New York City Truck Routes (kml)](http://www.nyc.gov/html/dot/downloads/misc/all_truck_routes_nyc.kml) file which defines road paths with Latitude and Longitude information.

The Truck Events Producer java code and the NYC Truck routes kml file can be downloaded with following commands.

    mkdir /opt/TruckEvents
    cd /opt/TruckEvents
    wget http://hortonassets.s3.amazonaws.com/mda/Tutorials-master.zip
    unzip Tutorials-master.zip

### Step 6:

**Compiling with Maven.**

Download and extract Apache Maven as shown in the commands below and set up the environment ‘PATH’ variable.

    wget http://www.carfab.com/apachesoftware/maven/maven-3/3.2.2/binaries/apache-maven-3.2.2-bin.tar.gz
    tar xvf apache-maven-3.2.2-bin.tar.gz
    mv apache-maven-3.2.2 /usr/local/
    export PATH=/usr/local/apache-maven-3.2.2/bin:$PATH
    mvn -version

![Maven Version](http://hortonassets.s3.amazonaws.com/mda/maven+version.png)
Maven Version

Add `export PATH=/usr/local/apache-maven-3.2.2/bin:$PATH` to the `~/.bashrc` file to auto set the values for `$PATH`.

Now lets compile and execute the code to generate Truck Events.

    cd /opt/TruckEvents/Tutorials-master
    mvn clean package

![mvn clean pacakge](http://hortonassets.s3.amazonaws.com/mda/mvn+clean+package.png)
mvn clean pacakge

Once the code is successfully compiled we shall see a new target directory created in the current folder. The binaries for all the Tutorials are in this target directory and the source code in src. To start the Kafka Producer we execute the following command to see the output as shown in the screenshot below.

    java -cp target/Tutorial-1.0-SNAPSHOT.jar com.hortonworks.tutorials.tutorial1.TruckEventsProducer localhost:9092 localhost:2181 &

![TruckEventsProducer Running](http://hortonassets.s3.amazonaws.com/mda/start+kafka+producer.png)
TruckEventsProducer Running

We have now successfully compiled and have the Kafka producer publishing messages to the Kafka cluster.

To verify, execute the following command:

    [root@sandbox ]# /usr/hdp/<IP_ADDRESS>-1084/kafka/bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic truckevent --from-beginning
    SLF4J: Failed to load class "org.slf4j.impl.StaticLoggerBinder".
    SLF4J: Defaulting to no-operation (NOP) logger implementation
    SLF4J: See http://www.slf4j.org/codes.html#StaticLoggerBinder for further details.
    2014-07-14 20:25:13.423|01|11|Unsafe following distance|    -74.01214432911161|40.70899264449202
    2014-07-14 20:25:14.193|02|12|Unsafe tail distance| -74.01214432911161|40.70899264449202
    2014-07-14 20:25:14.207|03|13|Overspeed|    -74.01214432911161|40.70899264449202
    2014-07-14 20:25:14.22|02|12|Overspeed| -74.01150567251823|40.70295884274092
    2014-07-14 20:25:14.236|03|13|Normal|   -74.01150567251823|40.70295884274092
    2014-07-14 20:25:14.253|02|12|Unsafe following distance|    -74.01150567251823|40.70295884274092
    2014-07-14 20:25:14.263|03|13|Lane Departure|   -74.01046533975128|40.71153454636318
    2014-07-14 20:25:14.271|02|12|Lane Departure|   -74.01046533975128|40.71153454636318

To stop kafka, you can use the command:

    service kafka stop

## Producer Code description

We use the TruckEventsProducer.java file under the src/main/java/tutorial1/ directory to generate the Kafka TruckEvents. This uses the all_truck_routes_nyc.kml data file available from [NYC DOT](http://www.nyc.gov/html/dot/html/motorist/trucks.shtml). We use Java API’s to produce Truck Events.

    [root@sandbox ~]# ls /opt/TruckEvents/Tutorials-master/src/main/java/tutorial1/TruckEventsProducer.java
    [root@sandbox ~]# ls /opt/TruckEvents/Tutorials-master/src/main/resources/all_truck_routes_nyc.kml

The java file contains 3 functions

  * **public class TruckEventsProducer**

We configure the Kafka producer in this function to serialize and send the data to Kafka Topic ‘truckevent’ created in the tutorial. The code below shows the Producer <k, v="" style="box-sizing: border-box;">class used to generate messages.

    String TOPIC = "truckevent";
    ProducerConfig config = new ProducerConfig(props);
    Producer<String, String> producer = new Producer<String, String>(config);

The properties of the producer are defined in the ‘props’ variable. The events, truckIds and the driverIds data is selected with random function from the array variables.

    Properties props = new Properties();
    props.put("metadata.broker.list", args[0]);
    props.put("zk.connect", args[1]);
    props.put("serializer.class", "kafka.serializer.StringEncoder");
    props.put("request.required.acks", "1");

    String[] events = {"Normal", "Normal", "Normal", "Normal", "Normal", "Normal", "Lane Departure", "Overspeed", "Normal", "Normal", "Normal", "Normal", "Lane Departure","Normal", "Normal", "Normal", "Normal",  "Unsafe tail distance", "Normal", "Normal", "Unsafe following distance", "Normal", "Normal", "Normal", "Normal", "Overspeed", "Normal", "Normal", };
    String[] truckIds = {"01", "02", "03"};
    String[] driverIds = {"11", "12", "13"};

KeyedMessage class takes the topic name, partition key, and the message value that needs to be passed from the producer as follows:

**class KeyedMessage[K, V](http://hortonworks.com/hadoop-tutorial/simulating-transporting-realtime-events-stream-apache-kafka/val%20topic:%20String,%20val%20key:%20K,%20val%20message:%20V)**

    KeyedMessage<String, String> data = new KeyedMessage<String, String>(TOPIC, finalEvent);

The Kafka producer events with timestamps are created by selecting the data from above arrays and geo location from the all_truck_routes_nyc.kml file.

    KeyedMessage<String, String> data = new KeyedMessage<String, String>(TOPIC, finalEvent);
    LOG.info("Sending Messge #:" + i +", msg:" + finalEvent);
    producer.send(data);
    Thread.sleep(1000);'

To transmit the data we now build an array using the GetKmlLangList() and getLatLong() function.

  * **private static String getLatLong**

This function returns coordinates in Latitude and Longitude format.

     if (latLong.length == -1)
     {
        return latLong[1].trim() + "|" + latLong[0].trim();
     }

  * **public static String[] GetKmlLanLangList**

This method is reading KML file which is an XML file. This xml file is loaded in File fXmlFile variable.

    File fXmlFile = new File(urlString);

Which will parse this file by running through each node (Node.ELEMENT_NODE) in loop. The XML element "coordinates" has array of two items lat, long. The function reads the lat, long and returns the values in array.

This tutorial gives you brief glimpse of how to use Apache Kafka to transport real-time events data.

repository: saptak/content

repo_name: saptak/content


text:
[![Build Status](https://travis-ci.org/krasin/voxel.svg?branch=master)](https://travis-ci.org/krasin/voxel)

Go libraries/utils for voxel processing.

The packages which are planned to be extracted from the src/ mess:

1. .stl reader
2. .schematic (Minecraft) reader
3. .nptl writer
4. voxelizer

license: MIT

repository: krasin/voxel

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: krasin/voxel


text:
### HTML
This set of guidelines are for the HTML format for dictionaries

#### Request
The dictionary sends a GET request to the url provided with the single parameter of word with a value of the current search contents. A PHP page should be created that will take `$_GET['word']` and search for the given request, returning a webpage at the end.

#### Generating HTML
In the url provided, the current HTML must be generated. An iframe will be generated with the url provided in the form {url}?word={search}.

You may consider altering the user agent to return a mobile version of the site is returned in order to take advantage of the smaller screen size of the dictionary panel.

```PHP
$w = $_GET['word'];
$w = str_replace(' ', '%20', $w);

$opts = array(
    'http' => array(
        'user_agent' => 'Mozilla/5.0 (Linux; Android 4.0.4; Galaxy Nexus Build/IMM76B) AppleWebKit/535.19 (KHTML,     like Gecko) Chrome/18.0.1025.133 Mobile Safari/535.19',
        'method' => 'GET',
        'header' => 'Accept-language: en' . "\r\n" .
                    'Cookie: foo=bar' . "\r\n",
    )
);
$context = stream_context_create($opts);

$out = file_get_contents('http://en.wikipedia.org/wiki/' . $w, false, $context);
```

#### Error Handling
If a given word is not available in your dictionary, instead of returning HTML, return "404" instead. This will indicate to the dictionary manager that a word is not available. The manager will move on to the next dictionary or return no results.

repository: Fleker/Gltn

gha_language: JavaScript

repo_name: Fleker/Gltn


text:
# get-routes

get-routes gets all routes from an Express application.

## Status

| Category         | Status                                                                                |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ |
| Version          | [![npm](https://img.shields.io/npm/v/get-routes)](https://www.npmjs.com/package/get-routes)                                                      |
| Dependencies     | ![David](https://img.shields.io/david/thenativeweb/get-routes)                                                                                |
| Dev dependencies | ![David](https://img.shields.io/david/dev/thenativeweb/get-routes)                                                                               |
| Build            | [![CircleCI](https://img.shields.io/circleci/build/github/thenativeweb/get-routes)](https://circleci.com/gh/thenativeweb/get-routes/tree/master) |
| License          | ![GitHub](https://img.shields.io/github/license/thenativeweb/get-routes)                                                                         |

## Installation

```shell
$ npm install get-routes
```

## Quick start

First you need to add a reference to get-routes to your application:

```javascript
const getRoutes = require('get-routes').default;
```

If you use TypeScript, use the following code instead:

```typescript
import getRoutes from 'get-routes';
```

Then, call the `getRoutes` function with an Express app to get a list of all registered routes:

```javascript
const routes = getRoutes(app);

console.log(routes);
// => {
//      get: [
//        '/articles'
//      ],
//      post: [
//        '/articles/:id'
//      ],
//      ...
//    }
```

## Running the build

To build this module use [roboter](https://www.npmjs.com/package/roboter).

```bash
$ npx roboter
```

repository: Aghabeiki/get-routes

gha_license_id: MIT

repo_name: Aghabeiki/get-routes


text:
# CarND-Path-Planning-Project
Self-Driving Car Engineer Nanodegree Program

### Simulator.
You can download the Term3 Simulator which contains the Path Planning Project from the [releases tab (https://github.com/udacity/self-driving-car-sim/releases).

### Goals
In this project your goal is to safely navigate around a virtual highway with other traffic that is driving +-10 MPH of the 50 MPH speed limit. You will be provided the car's localization and sensor fusion data, there is also a sparse map list of waypoints around the highway. The car should try to go as close as possible to the 50 MPH speed limit, which means passing slower traffic when possible, note that other cars will try to change lanes too. The car should avoid hitting other cars at all cost as well as driving inside of the marked road lanes at all times, unless going from one lane to another. The car should be able to make one complete loop around the 6946m highway. Since the car is trying to go 50 MPH, it should take a little over 5 minutes to complete 1 loop. Also the car should not experience total acceleration over 10 m/s^2 and jerk that is greater than 10 m/s^3.

## Project Rubric

### Complilation

The code compiles following the instructions

### Valid Trajectories

The car is able to drive at least 4.32 miles without incident: The car is able to drive at least 4.32 miles between 5 and 6 minutes. It depends on traffic.

![Image 1](https://github.com/delafu/CarND-Path-Planning-Project/blob/master/images/Capture1.png)
![Image 2](https://github.com/delafu/CarND-Path-Planning-Project/blob/master/images/Capture2.png)

The car drives according to the speed limit: The car is a good driver and never exceed he speed limit because we code that the desired speed is 49.5 Mph and using the approach from the Q&A of the project is impossible to exceed the speed limit setting the desired speed below the speed limit.

Max Acceleration and Jerk are not Exceeded: I used the Q&A approach again and I don´t get warnings about acceleration and Jerk.

Car does not have collisions: I think that I took a very conservative approach to pass cars. It´s based in the Q&A solution and in a finite state machine. You can see the states in lines 23-27 and the behaviour between lines 370 and 506.

The car stays in its lane, except for the time between changing lanes: The finite state machine tries to mantain the lane until one vehicle is in front of us and the aren´t vehicles near our vehicle in the contiguous lanes.

The car is able to change lanes: The car is able to change lanes to pass cars. If we are in the central lane we decide to use the faster lane (if it´s possible) to pass the car.

### Reflection

There is a reflection on how to generate paths: I generate the paths using the Q&A of the project and using the results of the FSM that I´ve designed. This approach is based in generating the trajectory using a spline.

repository: delafu/CarND-Path-Planning-Project

repo_name: delafu/CarND-Path-Planning-Project


text:
# Introduction
Project was created by participating team in extension engine spring camp.
E-Learning is scalable web application written in python (django).
E-Learning was designed to provide pleasant experience for users.
<img src="https://github.com/dianajoan/e-learning_app/blob/master/users/static_in_users/static_files/img/home-sample.png" width="720" height="400">
# Installation
Assuming you use virtualenv, follow these steps to download and run the
e-learning application in this directory:

    $ git clone https://github.com/dianajoan/e-learning_app.git
    $ cd eLearning
    $ virtualenv venv
    $ source ./venv/bin/activate
    $ pip install -r requirements
    $ python manage.py migrate
    $ python manage.py runserver

* Initial data supports 3 types of users for testing purposes:
    * User (username=user, password=letmein123)
    * Professor (username=professor, password=letmein123)
    * Admin (username=admin, password=letmein123)
    * Visit http://<IP_ADDRESS>:8000/

# Compatibility
* Python 2.7
* Django 1.9
* SQLite, PostgreSQL, MySQL

# Notes
* The source code is released under the MIT License.
* This is developed by [Diana Joanita<EMAIL_ADDRESS>Powered by ```anitanad.dsnibro.com```


text:
---
layout: default
---

# 1997-02-16 - test ping -<EMAIL_ADDRESS>12:32pm PST - ignore

## Header Data

From: Bill Stewart<EMAIL_ADDRESS>To<EMAIL_ADDRESS>Message Hash: 73608f8ebb444f3dff3a1bdfe48cd5357872a4d6a3d636ef85783b6debf99832

Message ID<EMAIL_ADDRESS>Reply To: _N/A_

UTC Datetime: 1997-02-16 22:41:21 UTC

Raw Date: Sun, 16 Feb 1997 14:41:21 -0800 (PST)

## Raw message

```
{% raw  %}From: Bill Stewart<EMAIL_ADDRESS>Date: Sun, 16 Feb 1997 14:41:21 -0800 (PST)
To<EMAIL_ADDRESS>Subject: test ping -<EMAIL_ADDRESS>12:32pm PST - ignore
Message-ID<EMAIL_ADDRESS>MIME-Version: 1.0
Content-Type: text/plain

Hi!  This is a test ping to verify whether mail to
<EMAIL_ADDRESS>gets forwarded successfully to
one of the other cypherpunks lists, and how fast.

#			Thanks;  Bill
# Bill Stewart, +1-415-442-2215<EMAIL_ADDRESS># You can get PGP outside the US at ftp.ox.ac.uk/pub/crypto/pgp
#     (If this is a mailing list, please Cc: me on replies.  Thanks.)

{% endraw %}
```

## Thread

+ Return to [February 1997](/archive/1997/02)

+ Return to "[Bill Stewart <stewarts@ix.netcom.com>](/authors/bill_stewart_stewarts_at_ix_netcom_com_)"

+ 1997-02-16 (Sun, 16 Feb 1997 14:41:21 -0800 (PST)) - test ping -<EMAIL_ADDRESS>12:32pm PST - ignore - _Bill Stewart<EMAIL_ADDRESS>


text:
# Usage

```js
@bindable columns = [
  {name : "id",         value: "id",        type: 'number'},
  {name : "Name",       value: "name",      type: 'text'},
  {name : "Created at", value: "createdAt", type: 'date'},
  // For enumeration
  {name : "State", value: "state", type: 'select'}
];
```

```html
<filter columns.bind="columns" criteria.bind="criteria"></filter>
```

## Attributes

### columns
An array with objects containing the `name` and `value`. If no `type` is given it will assume that the column is a `text`.

When the given `type` is a `datetime`, `datetime-local` will be used instead because `datetime` is not supported by browsers.

When the given `type` is a `select`, we assume the given column is an enumeration. Thus we will generate the options for the select element based on the enum values of the entity.

When the input value is invalid, for example with `datetime-local`, it will add the `has-error` class to the input. (styled default by bootstrap)

Read me about [types](http://aurelia-form.spoonx.org/types.html).

### entity
When given an entity, the filter will determine the columns based on the entity.

This is as simple as `EntityManager.getEntity('resource')`. *[More information](http://aurelia-orm.spoonx.org/api_entity.html)*.

If you don't use the `@type` decorator it will assume that the column is `text`.

### exclude-columns
When using an entity, you can exclude columns (comma separated) from showing up in the filter. You can exclude entire associations or part of them.

```js
// entity result set
{
    user: {
        username: 'Bob',
        password: 'a78dasd8907asd89a7sd&ASd98a7sd79'
    },
    groups: {
        id  : 1,
        name: 'users'
    },
    createdAt: '2016-01-01'
}
```

```html
<filter exclude-columns="user.password, createdAt, groups"></filter>
```

### criteria
The generated criteria object. Use this object to query your application.

## Changing framework
You can override the framework used for the filter with any of the [supported ones](https://github.com/SpoonX/aurelia-filter/tree/master/src) using the [aurelia-view-manager](https://github.com/spoonx/aurelia-view-manager).

repository: SpoonX/aurelia-filter

repo_name: SpoonX/aurelia-filter


text:
# Kubernetes GitHub Organization Guide

The Kubernetes project leverages multiple GitHub organizations to store and
organize code. This guide contains the details on how to run those organizations
for CNCF compliance and for the guidelines of the community.

## Organization Naming

Kubernetes managed organizations should be in the form of `kubernetes-[thing]`.
For example, [kubernetes-client](https://github.com/kubernetes-client) where the
API clients are housed.

Prior to creating an organization please contact the steering committee for
direction and approval.

Note: The CNCF, as part of the Linux Foundation, holds the trademark on the
Kubernetes name. All GitHub organizations with Kubernetes in the name should be
managed by the Kubernetes project or use a different name.

## Transferring Outside Code Into A Kubernetes Organization

Due to licensing and CLA issues, prior to transferring software into a Kubernetes
managed organization there is some due diligence that needs to occur. Please
contact the steering committee and CNCF prior to moving any code in.

It is easier to start new code in a Kubernetes organization than it is to
transfer in existing code.

## Team Guidance

Each organization should have the following teams:

- teams for each repo `foo`
  - `foo-admins`: granted admin access to the `foo` repo
  - `foo-maintainers`: granted write access to the `foo` repo
  - `foo-reviewers`: granted read access to the `foo` repo; intended to be used as
    a notification mechanism for interested/active contributors for the `foo` repo
- a `bots` team
  - should contain bots such as @k8s-ci-robot and @thelinuxfoundation that are
    necessary for org and repo automation
- an `owners` team
  - should be populated by everyone who has `owner` privileges to the org
  - gives users the opportunity to ping owners as a group rather than having to
    search for individuals

**NB**: Not all organizations in use today currently follow this team guidance.
We are looking to coalesce existing teams towards this model, and use this model
for all orgs going forward.  Notable discrepancies at the moment:

- `foo-reviewers` teams are considered a historical subset of
  `kubernetes-sig-foo-pr-reviews` teams and are intended mostly as a fallback
  notification mechanism when requested reviewers are being unresponsive.  Ideally
  OWNERS files can be used in lieu of these teams.
- `admins-foo` and `maintainers-foo` teams as used by the kubernetes-incubator
  org. This was a mistake that swapped the usual convention, and we would like
  to rename the team

## Repository Guidance

Repositories have additional guidelines and requirements, such as the use of
CLA checking on all contributions. For more details on those please see the
[Kubernetes Template Project](https://github.com/kubernetes/kubernetes-template-project), and the [Repository Guidelines](kubernetes-repositories.md)

repository: nckturner/community

repo_name: nckturner/community


text:
---
title: 'Online Shape Tracking based on Tactile Sensing and Deformation Modeling for Robot Manipulation'
authors: 'Jose Sanchez, Carlos M. Mateo, Juan Antonio Corrales, Belhassen-Chedli Bouzgarrou, Youcef Mezouar'
venue: 'IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)'
date: 2018-10-02
category: 'published'
pdf: '2018_shape_sensing.pdf'
teaser: 'shape_tracking.png'
permalink: /publications/2018_shape_sensing
collection: publications
---

Abstract
-------
Precise robot manipulation of deformable objects requires an accurate and fast tracking of their shape as they deform. So far, visual sensing has been mostly used to solve this issue, but vision sensors are sensitive to occlusions, which might be inevitable when manipulating an object with robot. To address this issue, we present a modular pipeline to track the shape of a soft object in an online manner by coupling tactile sensing with a deformation model. Using a model of a tactile sensor, we compute the magnitude and location of a contact force and apply it as an external force to the deformation model. The deformation model then updates the nodal positions of a mesh that describes the shape of the deformable object. The proposed sensor model and pipeline, are evaluated using a Shadow Dexterous Hand equipped with BioTac sensors on its fingertips and an RGB-D sensor.


text:
# Füd
A demo project geared towards food inventory management! Keep track of expiration dates, minimize spoilage, and keep track of your grocery list.
* Add and delete foods singly or in bulk
* Inputting a new food and want to add an icon from the selector? Type in the selector box to search for a food icon
* Toggle between viewing the foods in your pantry, fridge, and freezer

This project is actively being built! Incoming updates will include integrated Recipe management feature, shopping cart feature, and food metrics.
Füd is currently a desktop-primary app, but mobile-side design is incoming!

Credit for the cute icons goes to Smashicons from www.flaticon.com!

repository: RosalineP/fud

repo_name: RosalineP/fud


text:
### Title: Conditional Generative Adversarial Nets https://arxiv.org/pdf/1411.1784.pdf

### Publication: arXiv

### Author：Mehdi Mirza et al.

![Conditional GAN](Conditional%20GAN.jpg)

### Paper Review
- Research Background

  Generative adversarial networks are proposed to overcome difficulties of approximating probabilistic computations faced by previous traditional generative models.

- Problem to Solve

  There is no control on generated data modes in unconditional generative models.

- Key Design and Algorithm Proposed

  Both the generator and discriminator are conditioned on extra information. This extra information can be any modality like data label. Adding an additional input layer to both the generator and discriminator to feed the extra information.

- Major Contribution

  They add more information when training a GAN, leading to better generated results.

- Major limitation

  There is no advanced models exploited in this paper, and the dataset used in this paper is rather simple.

- Something you don’t understand

  I don't know what is Gaussian Parzen window log-likelihood estimate used to evaluate generated samples.

- Your view on the research domain/topic/approach/data/solution  (positive or negative)

  1. I think improving training of generative models is promising.
  2. I think directly adding extra information to the model to help model train is a novel method.
  3. I think the dataset they use in this paper, MNIST and YFCC100M, is some basic and simple datasets.

repository: guansLab/PaperReading

repo_name: guansLab/PaperReading


text:
## Output: Jira

Worklogger can also send worklogs as Jira or Jira tempo logs.

In order to configure it, you will need your account credentials (username and password), or a username/token combination (recommended).

### Getting a JIRA password/token

To use JIRA API tokens instead of passwords, follow these steps: https://confluence.atlassian.com/cloud/api-tokens-938839638.html

- Go to https://id.atlassian.net/ logged in with your Atlassian account
- Click on API Tokens, then Create Token
- Copy it and use it as the value of `JiraPassword` in the JIRA Output

### Configuring the output

The Jira output can be configured like so:

```json
{
    "type": "JiraWorklog",
    "name": "<internal name for output>",

    "JiraUrl": "https://myserver.atlassian.net",
    "JiraUsername": "myUsername",
    "JiraPassword": "myJiraPassword",
}
```

In here, the `type` property needs to be `JiraWorklog`.

The `name` property can be any value that you use internally to identify this integration.

Because Jira uses its own API, the `formatters` option will be ignored. It will still stop the processing if the configuration is wrong.

The property `JiraUrl` needs to have the URL to the Jira instance you'll be using. This supports both publicly hosted and Atlassian-hosted versions, as long as their API is enabled.

The property `JiraUsername` should be your account login.

The property `JiraPassword` should be either your password, or a token that you created to use instead of it. (Yes, this is insecure and can be improved. PRs are welcome.)

The key of ticket on which the time will be logged has to be stored in a tag named `JiraTicket`. Consider using an [addTag](add-tag.md) action to add it programatically.

repository: AlphaGit/worklogger

gha_language: TypeScript

repo_name: AlphaGit/worklogger


text:
# latex

[![go.dev reference](https://pkg.go.dev/badge/github.com/go-latex/latex)](https://pkg.go.dev/github.com/go-latex/latex)
[![GitHub release](https://img.shields.io/github/release/go-latex/latex.svg)](https://github.com/go-latex/latex/releases)
[![CI](https://github.com/go-latex/latex/workflows/CI/badge.svg)](https://github.com/go-latex/latex/actions)
[![codecov](https://codecov.io/gh/go-latex/latex/branch/master/graph/badge.svg)](https://codecov.io/gh/go-latex/latex)
[![GoDoc](https://godoc.org/github.com/go-latex/latex?status.svg)](https://godoc.org/github.com/go-latex/latex)
[![License](https://img.shields.io/badge/License-BSD--3-blue.svg)](https://github.com/go-latex/latex/raw/master/LICENSE)

`latex` is a package holding Go tools for [LaTeX](https://www.latex-project.org/).

`latex` is supposed to provide features akin to `MathJax` or `matplotlib`'s `TeX` capabilities.
_ie:_ it is supposed to be able to draw mathematical equations, in pure-Go.

`latex` is *NOT SUPPOSED* to be a complete typesetting system like `LaTeX` or `TeX`.

For this, please take look at:

- [Star-TeX](https://star-tex.org)
- [Star-TeX (git repo)](https://git.sr.ht/~sbinet/star-tex)

Eventually, `go-latex/latex` might just use `star-tex.org/...` to provide the `MathJax`-like capabilities.
(once `star-tex.org/...` is ready and exports a nice Go API.)

## Installation

```
$> go get github.com/go-latex/latex/...
```

## Documentation

Documentation is served by [godoc](https://godoc.org), here:

- [godoc.org/github.com/go-latex/latex](https://godoc.org/github.com/go-latex/latex)

The main use case for `go-latex/latex` is to draw a mathematical equation.
This is typically achieved via the `latex/mtex.Render` function that knows how to render mathematical `TeX` equations to a renderer interface.

### Example

```go
package main

import (
	"os"

	"github.com/go-latex/latex/drawtex/drawimg"
	"github.com/go-latex/latex/mtex"
)

func main() {
	f, err := os.Create("output.png")
	if err != nil {
		panic(err)
	}
	defer f.Close()

	dst := drawimg.NewRenderer(f)
	err = mtex.Render(dst, `$f(x) = \frac{\sqrt{x +20}}{2\pi} +\hbar \sum y\partial y$`, 12, 72, nil)
	if err != nil {
		panic(err)
	}

	err = f.Close()
	if err != nil {
		panic(err)
	}
}
```

## LICENSE

BSD-3.

repository: balerter/balerter

gha_language: Go

repo_name: balerter/balerter


text:
---
layout: video
show_meta: false
title: "Song from stormy night"
subheadline: "Video"
teaser: "Just in stormy night. Listen and relax my friends..."
tags:
    - post format
categories:
    - misc
iframe: ""
#
# These video settings are totally optional. It's only purpose
# is SEO, so that videos show up in Google hopefully with a
# thumbnail.
# More › https://developers.google.com/webmasters/videosearch/schema?hl=en&rd=1
#
# embedURL – A URL pointing to a player for the specific video.
# contentURL – A URL pointing to the actual video media file
# thumbnailUrl – A URL pointing to the video thumbnail image file.
#
video:
    embedURL: "https://www.youtube.com/embed/TCYKS4_Y2wY"
    contentURL: "https://www.youtube.com/embed/TCYKS4_Y2wY"
    thumbnailUrl: ""
---

## About the video

> This is one of those songs that gets better and better every single time you listen to it. The pianist


text:
# netproghw2

The purpose of this homework is to write a (fake) Huffman-coded FTP server &
client. There are three commands can be used in the client:

```
login <IP> <port>
send <filename>
logout
```

For server, it does not interact with user.

## Features

* Server
  - IPv6 capable
  - Print message when connection established, terminated and file received
  - Send welcome message to client
  - Uncompress and save file sent from client
  - Save Huffman coding table to file

* Client
  - Connect to server via hostname or IP address (v6 capable)
  - File tansmitting is compressed using Huffman coding

* Common
  - Both binary and ASCII text can be transferred correctly
  - Fixed-length Huffman coding is **not** implemented
  - Variable-length Huffman coding is implemented instead

## Build

`$ make`

## Usage

Server:

```
$ ./server
Start listening at port 1732.
Connection from ::1 port 49390 protocol SOCK_STREAM(TCP) accepted.
Receiving LICENSE ...
OK 1165 bytes received.
Uncompressed file size: 1064 bytes. Compression ratio: 109.49%.
Huffman coding table is saved in LICENSE.code .
Connection terminated.
```

Client:

```
$ ./client
> login ::1 1732
Connecting to ::1:1732
Welcome to my netprog hw2 FTP server
> send LICENSE
Original file size: 1064bytes, compressed size: 1165 bytes.
Compression ratio: 109.49%.
OK 1165 bytes sent.
> logout
Goodbye.
```

## Organization

```
netproghw2
 ├── README.md - The file you're reading.
 ├── LICENSE - The license of this project.
 ├── Makefile - Directives for GNU make build automation tool.
 ├── server.cpp - The main body of server.
 ├── client.cpp - The main body of client.
 ├── commons.hpp - Header of common functions and variables.
 ├── commons.cpp - Common functions and variables.
 ├── my_huffman.hpp - Header of Huffman coding library.
 ├── my_huffman.cpp - Huffman coding library.
 ├── my_send_recv.h - Header of custom send and recv functions.
 └── my_send_recv.c - Custom send and recv functions, written in C.
```

## Protocol

Every message or command sent to remote host must ended with newline ('\n')
character, and has a max length limit of 512 bytes.

Send:

  `send <length> <filename>\n`

  Client issues `send` command with total transmitting length and filename,
  and followed by the data with exactly that length.

## Program Procedure

Server:

  1. Accept and send welcome message (end with '\n') to client.
  2. Read and process client command repeatedly.
      - Currently only `send` command is implemented. Data sent from client
        is expected compressed using Huffman coding, with file length and code
        table embeded.
  3. After client terminate connection, back to step 1.
  4. If any invalid command received, terminate connection immediately and
      return to step 1.

Client:

  1. Connect to server.
  2. Read and print welcome message.
  3. Read and process user command repeatedly.
      - Currently only `send` command is implemented. Client read and compress
        file, calculate length including Huffman tree embedded, then send
        command to server.
  4. logout and exit process.


text:
# Twinagle = Twirp + Finagle

![Build Status](https://github.com/soundcloud/twinagle/workflows/Scala%20CI/badge.svg)
[![Maven Central](https://maven-badges.herokuapp.com/maven-central/com.soundcloud/twinagle-runtime_2.13/badge.svg)](https://maven-badges.herokuapp.com/maven-central/com.soundcloud/twinagle-runtime_2.13)

Twinagle is an implementation of the
[Twirp wire protocol](https://github.com/twitchtv/twirp/blob/master/PROTOCOL.md)
for Scala+Finagle.

Please see [the documentation website](https://soundcloud.github.io/twinagle)
for an introduction.

# How to contribute

Thanks for your interest in Twinagle, we're welcome your contributions!
For larger changes, please open an issue to discuss them before spending lots of time implementing things.
For small changes, hack away and submit a pull request.

Please ensure that `sbt scalafmtCheckAll +test scripted` passes when submitting code changes.

# Notes

* IntelliJ [doesn't run plugins][intellij] during project build. Before importing,
 `sbt compile` may be necessary.

* In order to run the full test suite (i.e. the unit tests & the end-to-end tests
 for code-generation) use `sbt +test scripted`

repository: soundcloud/twinagle

gha_language: Scala

repo_name: soundcloud/twinagle


text:
---
title: Stable Havana 2013.2.3 update
date: 2014-04-16 15:38:27
author: rbowen
---

The RDO Havana repositories were updated with the latest stable 2013.2.3 update
Details of the changes can be drilled down to from:

https://launchpad.net/nova/havana/2013.2.3
https://launchpad.net/glance/havana/2013.2.3
https://launchpad.net/horizon/havana/2013.2.3
https://launchpad.net/keystone/havana/2013.2.3
https://launchpad.net/cinder/havana/2013.2.3
https://launchpad.net/neutron/havana/2013.2.3
https://launchpad.net/ceilometer/havana/2013.2.3
https://launchpad.net/heat/havana/2013.2.3

In addition there have been these client rebases:

python-keystoneclient from 0.4.1 to 0.7.1
python-neutronclient from 2.3.1 to 2.3.4

See https://www.redhat.com/archives/rdo-list/2014-April/msg00050.html for further discussion.

repository: gbraad/redhat-openstack-website

gha_language: HTML

gha_license_id: NOASSERTION

repo_name: gbraad/redhat-openstack-website


text:
# How to run Logging Module?
1. `mvn clean install`
2. Check the `pom.xml` `exec-maven-plugin` - this plugin is used to run executable jar using mvn.
3. Note: you can pass cmd args using `exec-maven-plugin`
4. To run appln: `mvn exec:java`
5. To view console logs goto "Run" tab in intellij and expand the application dropdown.

repository: akhr/java

repo_name: akhr/java


text:
# XamarinVideoPost
A Xamarin project on Android. Posting video frame to Server and get response.

This project was designed for doing CBIR(Content-based Image Retrieval) on phone.

### Usage
Create a Xamrain Android Project and then configure the code.

repository: Jhonve/XamarinVideoPost

repo_name: Jhonve/XamarinVideoPost


text:
## About Laravel Couchbase Demo

Laravel Couchbase Demo is a Laravel application used to demonstrate using Laravel with Couchbase Server.

## Installation

This demo application uses Docker Desktop on Mac or Windows. Follow these steps to get up and running.

Commands below should be run from the project root directory. Run them in Terminal, CMD.exe or Powershell.

1. Clone this repository.
2. Ensure [Docker Desktop](https://www.docker.com/products/docker-desktop) is running.
3. Create the `docker-compose` environment file.
    ```
    cd ./scripts/Docker
    cp dev.env .env
    ```
   If you modify the *.env* file, you also have to modify the Laravel .env file to use the same username, password and bucket name in the demo. We recommend you try the demo first with the defaults in place then modify them in the future if desired. DO NOT use the defaults in a production environment.
4. Build the Docker Images
    ```
    cd ./scripts/Docker
    docker-compose build
    ```
5. Start the Docker Containers
    ```
    docker-compose up -d
    ```
6. Tail the Docker Logs
    ```
    docker-compose logs -f
    ```

   Use `CTRL+C` to stop tailing the logs. To continue with the instructions, you can either stop tailing the logs OR open a second command prompt and `cd` to the same location.

7. Connect to the `php-fpm` Docker container.
    ```
    docker-compose exec php-fpm bash
    ```
8. Install `composer` and `npm` dependencies in the project.
    ```
    composer install
    npm install
    npm run dev
    ```
9. Copy the `.env.example` to `.env`. If you modified the Docker .env file above, also modify the values in this file to match.
    ```
    cp .env.example .env
    ```
10. The demo should now work. Access it:
    * http://localhost:8091 (Couchbase Server - Login with admin/secret1234 by default)
    * http://localhost:9090 (Demo App)

You can edit project files and they will be reflected live in the Docker container using the magic of [Docker Volumes](https://docs.docker.com/compose/compose-file/#volume-configuration-reference).

## Uninstall

To stop the Docker containers and delete the built images, from the project root directory, run these commands:

```
cd ./scripts/Docker
docker-compose down --rmi 'all'
```

At this point, you can delete the project directory and there should be no artifacts of the project on your system. If you installed Docker Desktop just for this demo, please refer to their documentation for uninstall instructions.

## Contributing

Thank you for considering contributing to the Laravel Couchbase Sample! To keep this as simple as possible, please follow the Laravel contribution guide that can be found in the [Laravel documentation](https://laravel.com/docs/contributions).

## License

The Laravel Couchbase Sample is open-sourced software licensed under the [MIT license](https://opensource.org/licenses/MIT).

repository: brantburnett/laravel-couchbase-demo

repo_name: brantburnett/laravel-couchbase-demo


text:
# SPACESHIP GAME

- The python script makes use of Pygame, a popular GUI module, to develop an interactive multiplayer Spaceship Game.
- The 2 players compete to aim bullets at each other and the first player to lose their health, loses.

## Requirements:

All the packages essential for running the script can be installed as follows:

``` sh
$ pip install -r requirements.txt
```

## Working:

![GIF](https://media.giphy.com/media/gRjmH1VPUBZrfYV0RH/giphy.gif)

repository: PrajjwalDatir/Amazing-Python-Scripts

repo_name: PrajjwalDatir/Amazing-Python-Scripts


text:
Video Object Annotation Interface
==================================

![](GUI.jpg)

This work is based on [LabelImg](https://github.com/tzutalin/labelImg).

It is written in Python and uses Qt for its graphical interface.

Annotations are saved as Json files in MS-COCO format.

Installation
------------------

    sudo apt-get install pyqt5-dev-tools

    sudo pip3 install -r requirements.txt

    make qt5py3

    python3 main.py

License
------------------
Free software: [MIT license](https://github.com/ltnghia/Object_Annotation_Interface/blob/master/LICENSE).

Contact: [Trung-Nghia Le](https://sites.google.com/view/ltnghia).


text:
### [CVE-2018-2636](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-2636)
![](https://img.shields.io/static/v1?label=Product&message=Hospitality%20Simphony&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=%3D%202.7%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=Difficult%20to%20exploit%20vulnerability%20allows%20unauthenticated%20attacker%20with%20network%20access%20via%20HTTP%20to%20compromise%20Oracle%20Hospitality%20Simphony.%20%20Successful%20attacks%20of%20this%20vulnerability%20can%20result%20in%20takeover%20of%20Oracle%20Hospitality%20Simphony.&color=brighgreen)

### Description

Vulnerability in the Oracle Hospitality Simphony component of Oracle Hospitality Applications (subcomponent: Security). Supported versions that are affected are 2.7, 2.8 and 2.9. Difficult to exploit vulnerability allows unauthenticated attacker with network access via HTTP to compromise Oracle Hospitality Simphony. Successful attacks of this vulnerability can result in takeover of Oracle Hospitality Simphony. CVSS 3.0 Base Score 8.1 (Confidentiality, Integrity and Availability impacts). CVSS Vector: (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H).

### POC

#### Reference
- http://www.oracle.com/technetwork/security-advisory/cpujan2018-3236628.html
- https://erpscan.io/advisories/erpscan-18-002-oracle-micros-pos-missing-authorisation-check/
- https://github.com/erpscanteam/CVE-2018-2636
- https://www.exploit-db.com/exploits/43960/

#### Github
- https://github.com/0xT11/CVE-POC
- https://github.com/ARPSyndicate/cvemon
- https://github.com/AidoWedo/Awesome-Honeypots
- https://github.com/Correia-jpv/fucking-awesome-honeypots
- https://github.com/Cymmetria/micros_honeypot
- https://github.com/Hackinfinity/Honey-Pots-
- https://github.com/Mehedi-Babu/honeypots_cyber
- https://github.com/Nieuport/-awesome-honeypots-
- https://github.com/Ondrik8/-Security
- https://github.com/Pasyware/Honeypot_Projects
- https://github.com/birdhan/SecurityProduct
- https://github.com/birdhan/Security_Product
- https://github.com/developer3000S/PoC-in-GitHub
- https://github.com/eric-erki/awesome-honeypots
- https://github.com/erpscanteam/CVE-2018-2636
- https://github.com/hectorgie/PoC-in-GitHub
- https://github.com/investlab/Awesome-honeypots
- https://github.com/paralax/awesome-honeypots
- https://github.com/paulveillard/cybersecurity-honeypots
- https://github.com/qince1455373819/awesome-honeypots
- https://github.com/sankitanitdgp/san_honeypot_resources
- https://github.com/wisoez/Awesome-honeypots

repository: trickest/cve

branch_name: refs/heads/main

repo_name: trickest/cve


text:
Bluetooth Low Energy with Android and Arduino
========================================================

These are **complete downloadable code examples** from my book, _Bluetooth Low Energy with Android and Arduino_ (<url>).  The book teaches how to make Bluetooth Low Energy devices talk using Arduino in Java and Android in C++.

If you find these examples helpful and you haven't purchased the book, please consider doing so.

- Tony Gaitatzis<EMAIL_ADDRESS>
![BookCover](Bluetooth Low Energy with Android and Arduino Cover.png)

Organization
-------------
Each chapter of this book teaches a new concept in Bluetotoh Low Energy Programming, from turning on the radio to usable example projects.

The code is available in the following repositories:

[Chapter 3: Bootstrapping] (https://github.com/OReillyBleAndroidArduino/Chapter03)

[Chapter 4: Saying Hello] (https://github.com/OReillyBleAndroidArduino/Chapter04)

[Chapter 5: Shaking Hands] (https://github.com/OReillyBleAndroidArduino/Chapter05)

[Chapter 6: Services and Characteristics] (https://github.com/OReillyBleAndroidArduino/Chapter06)

[Chapter 7: Send Data to Central] (https://github.com/OReillyBleAndroidArduino/Chapter07)

[Chapter 8: Send Data to Peripheral] (https://github.com/OReillyBleAndroidArduino/Chapter08)

[Chapter 9: Notifications] (https://github.com/OReillyBleAndroidArduino/Chapter09)

[Chapter 10: Large Data] (https://github.com/OReillyBleAndroidArduino/Chapter10)

[Chapter 11: Security] (https://github.com/OReillyBleAndroidArduino/Chapter11)

[Chapter 12: Project: Beacon] (https://github.com/OReillyBleAndroidArduino/Chapter12)

[Chapter 13: Project: BLE Echo] (https://github.com/OReillyBleAndroidArduino/Chapter13)

[Chapter 14: Project: Remote Control LED] (https://github.com/OReillyBleAndroidArduino/Chapter14)

MIT License
------------

Copyright (c) [2016] [Tony Gaitatzis]<EMAIL_ADDRESS>
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

 IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

repository: OReillyBleAndroidArduino/Book

repo_name: OReillyBleAndroidArduino/Book


text:
+++
title = "Door"

template = "doc.html"
[extra]
category = "hoon-nock"
+++

A **door** is a [core](/docs/glossary/core) the payload of which is a cell of sample and context.

### Further Reading

- [The Hoon Tutorial](/docs/hoon/hoon-school/): Our guide to learning the Hoon programming language.
  - [Lesson 1.8: Doors](/docs/hoon/hoon-school/doors): A Hoon Tutorial lesson that discusses doors.


text:
# angular-carousel.js 1.2.0

A simple very generic AngularJS carousel. Features:

- Touch optimized (swipe to move between the slides)
- Looping (enabled by default)
- Timer (optional)
- Random start (optional)
- Select the carousel by name (using the Carousel service) and control the carousel
- Print out the current slide of a selected carousel

See the [demo here](http://htmlpreview.github.io/?https://raw.githubusercontent.com/lifelynl/angular-carousel/master/examples/demo.html "demo")

## How to use

### Step 1: install this package (Bower)

`bower install lifely-angular-carousel`

There other dependencies are required:

- *AngularJS >= 1.2.3*
- *HammerJS >= 2.0.4*

### Step 2: write the html
Just use `ng-carousel` to initiate a carousel. Give it a unique name with `ng-carousel-name`.

        <slidecontainer class="carousel-slides">
            <slide class="carousel-example">Slide 1</slide>
            <slide class="carousel-example">Slide 2</slide>
            <slide class="carousel-example">Slide 3</slide>
            <slide class="carousel-example">Slide 4</slide>
            <slide class="carousel-example">Slide 5</slide>
            <slide class="carousel-example">Slide 6</slide>
        </slidecontainer>

You can put anything you want in de slides. The slides fit perfectly inside the ng-carousel element, which is 300px by default. You can easily overwrite it using CSS.

#### If the slides are being generated (for example with `ng-repeat`)
You should let ng-carousel know when your scope changes. To do so, just pass your changing scope variable through the attribute `ng-carousel-watch="yourChangingScopeVariable"`.

### Optional: control the carousel with inside buttons
You can place anything inside the *.carousel-arrow* elements. These are positioned left and right and have a width of 100px by default. You also can overwrite this using CSS.

        <slidecontainer class="carousel-slides">
            <slide class="carousel-example">Slide 1</slide>
            <slide class="carousel-example">Slide 2</slide>
            <slide class="carousel-example">Slide 3</slide>
            <slide class="carousel-example">Slide 4</slide>
            <slide class="carousel-example">Slide 5</slide>
            <slide class="carousel-example">Slide 6</slide>
        </slidecontainer>

            <button ng-click="Carousel.get('example-carousel2').previous()">back</button>

            <button ng-click="Carousel.get('example-carousel2').next()">forth</button>

### Optional: disable looping
You can disable looping by setting `ng-carousel-loop` attribute to false on element having your `ng-carousel` directive.

        <slidecontainer>
            <slide>Slide 1</slide>
            <slide>Slide 2</slide>
            <slide>Slide 3</slide>
            <slide>Slide 4</slide>
        </slidecontainer>

### Optional: control the carousel from another place in the code
You can control the carousel using the `Carousel` service.

- Select and save a carousel using `var myCarousel = Carousel.get('carousel-example3')`
- Read-only variables of myCarousel are now:
    - `myCarousel.currentSlide` - the active slide of your myCarousel
    - `myCarousel.slidesCount` - the total count of slides inside myCarousel
- Control the carousel:
    - `myCarousel.previous()` - go to the previous slide
    - `myCarousel.next()` - go to the next slide
    - `myCarousel.toIndex(n)` - go to a specific slide (starting with 0)

repository: ashivliving/angular-carousel

gha_language: CSS

repo_name: ashivliving/angular-carousel


text:
# Max Increase to Keep City Skyline

## Details

* [Link to Problem](https://leetcode.com/problems/max-increase-to-keep-city-skyline/)
* Time : 8 ms
* Memory : 38.8 MB
* Language : Java

## Author

**Nilaksh Agarwal**

* Website: [nilax97.github.io](https://nilax97.github.io/)
* Github: [@nilax97](https://github.com/nilax97)
* LinkedIn: [@nilaksh97](https://linkedin.com/in/nilaksh97)

## License

MIT License

Copyright (c) 2021 Nilaksh Agarwal

url: https://raw.githubusercontent.com/nilax97/leetcode-solutions/d3c12f2b289662d199510e0431e177bbf3cda121/solutions/Max Increase to Keep City Skyline/README.md


text:
---
title: Nginx ingress upgrade
date: 2021-05-03T11:00:00-00:00
resolved: true
resolvedWhen: 2021-05-04T10:57:00-00:00
# Possible severity levels: down, disrupted, notice
severity: notice
affected:
  - publick8s
section: issue
---

**Update 2021-05-03 11:58 UTC

The operation is successful, we are now waiting several hours before deleting
the temporary resources that we created during the transition to be sure
that no DNS traffics is redirected to those locations.
We didn't notice service downtime during the process.

* [INFRA-2743](https://issues.jenkins.io/browse/INFRA-2743)
* [NOTES](https://hackmd.io/cH4rbENeSOGLHD3rAgnXqQ?both)

There is no ETA at the moment.

We are upgrading the nginx ingress controllers on the Kubernetes cluster publick8s.
While no down time is expected, the risk during this upgrade is to stop redirecting HTTP/HTTPS traffics to the following services:

Public services:
* www.jenkins.io
* plugins.jenkins.io
* javadoc.jenkins.io
* get.jenkins.io
* fallback.get.jenkins.io
* reports.jenkins.io
* uplink.jenkins.io
* customize.jenkins.io
* incrementals.jenkins.io
* beta.accounts.jenkins.io
* mirror.azure.jenkins.io
* jenkins-wiki-exporter.jenkins.io
* archives.azure.jenkins.io

Private services:
* release.ci.jenkins.io
* infra.ci.jenkins.io
* admin.accounts.jenkins.io
* grafana.publick8s.jenkins.io

The operation consists of deploying temporary ingress controllers listening on ephemeral IPs.

repository: spacedog/status

repo_name: spacedog/status


text:
# galaxy-simulation

![Screenshot](screenshot.png)

Four different implementations of gravitational n-body simulation. In order of worst to best performance:
- Sequential (brute-force)
- Parallelized (brute-force)
- Sequential Barnes-Hut (approximation)
- Parallelized Barnes-Hut (approximation)

More galaxy datasets can be found in the original location:
ftp://ftp.cs.princeton.edu/pub/cs126/barnes-hut

This was done during my time at KTH, so it's in dire need of refactoring.

References: https://en.wikipedia.org/wiki/Barnes%E2%80%93Hut_simulation

repository: VibyJocke/galaxy-simulation

repo_name: VibyJocke/galaxy-simulation


text:
# Java NIO direct ByteBuffer leak

Java's NIO API caches temporary direct ByteBuffers, which looks like a native memory leak. See [my blog post for details](http://www.evanjones.ca/java-bytebuffer-leak.html). This repository contains a program to demonstrate the leak, a quick-and-dirty benchmark to test the performance impact, and a patch against OpenJDK 8 to remove the cache.

## DirectBBLeak

This program demonstrates that the JDK "leaks" direct ByteBuffers by writing to `/dev/null` with multiple threads. When using heap ByteBuffers, the number of allocated direct ByteBuffers does not decrease until the threads exit, while if you use direct ByteBuffers, they decrease as usual with garbage collection. Run it with `javac DirectBBLeak.java; java DirectBBLeak`.

### Output from Java 1.8.0_66 with the leak

```
=== Direct ByteBuffers ===
Before threads started:
  direct ByteBuffer count: 0 capacity:0.0 MB
All threads have written; before System.GC():
  direct ByteBuffer count: 10 capacity:1000.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB
After threads exited:
  direct ByteBuffer count: 0 capacity:0.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB

=== Heap ByteBuffers ===
Before threads started:
  direct ByteBuffer count: 0 capacity:0.0 MB
All threads have written; before System.GC():
  direct ByteBuffer count: 10 capacity:1000.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 10 capacity:1000.0 MB
After threads exited:
  direct ByteBuffer count: 10 capacity:1000.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB
```

### Output from Java 1.8.0_66 with patched Util class (no leak)

```
=== Direct ByteBuffers ===
Before threads started:
  direct ByteBuffer count: 0 capacity:0.0 MB
All threads have written; before System.GC():
  direct ByteBuffer count: 10 capacity:1000.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB
After threads exited:
  direct ByteBuffer count: 0 capacity:0.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB

=== Heap ByteBuffers ===
Before threads started:
  direct ByteBuffer count: 0 capacity:0.0 MB
All threads have written; before System.GC():
  direct ByteBuffer count: 0 capacity:0.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB
After threads exited:
  direct ByteBuffer count: 0 capacity:0.0 MB
After System.GC() and Thread.sleep(100):
  direct ByteBuffer count: 0 capacity:0.0 MB
```

## BBWritePerfTest

Measures the performance of writing to `/dev/null` in a loop. This can be used to measure the performance impact of changes to this cache. Removing the cache completely does hurt performance, particularly for small I/O calls. Run it with `javac BBWritePerfTest.java; java BBWritePerfTest`.

## remove-bb-cache.diff

This patch removes the direct ByteBuffer cache completely. See [my blog post for how to compile and replace the affected class](http://www.evanjones.ca/java-bytebuffer-leak.html).

repository: rohitbemax/java-bytebuffer-leak

repo_name: rohitbemax/java-bytebuffer-leak


text:
---
title: 'Ubuntu Server Installation'
date: '2011-04-02T13:24:49+10:00'
status: publish
permalink: /documentation/ubuntu-server-installation
author: tim
excerpt: ''
type: page
id: 17
---
Ubuntu Server Installation
--------------------------

Step by step instructions for installing Ubuntu Server ready to install the hotspot.

Ubuntu 12.04 (LTS) is tested and currently supported. Debian 6 is also currently supported

1. Boot off the Ubuntu Server CD.
2. Select your language and then select Install Ubuntu Server
  ![](../uploads/2011/04/server_0001.png "server_0001")
3. Select your location and keyboard following the prompts
4. Allow the installer to detect your hardware
5. As you have 2 network cards installed, it should ask you which one is the primary one.
  1. If you know, then select it, otherwise select the first one
  2. It will then attempt DHCP to setup the network card. If it fails then you need to select “Go Back” and try with the next network card.
  3. You need to ensure the network cable is plugged in and the router is working
      ![](../uploads/2011/04/server_0002.png "server_0002")
      ![](../uploads/2011/04/server_0003.png "server_0003")
6. When it asks for a hostname, choose something descriptive to your location. This hostname is used to identify the system for remote support so something other than hotspot would be good.
  ![](../uploads/2011/04/server_0004.png "server_0004")
7. It will then attempt to setup the clock, if it gets the wrong timezone, just select the correct one.
8. Soon it will ask you about partitioning the disk.
  1. Choose the first option to use guided partitioning and use the entire disk.
  2. The confirm the changes it prompts to write to disk and watch as it formats the drives ready for the new install
9. It will then start installing the base system. On a slower computer, now is a good time to go have a coffee break or something.
10. Enter your name when asked for the new user account. This will be your local account, not the remote assistance account
  ![](../uploads/2011/04/server_0005.png "server_0005")
11. Choose a username for yourself
  ![](../uploads/2011/04/server_0006.png "server_0006")
12. Choose a secure password
  ![](../uploads/2011/04/server_0007.png "server_0007")
  1. Re-enter your password again when prompted
13. Choose not to encrypt your home directory
  ![](../uploads/2011/04/server_0008.png "server_0008")
14. It will now setup the APT sources etc
15. Select to automatically install security updates
  ![](../uploads/2011/04/server_0009.png "server_0009")
16. When it asks what software you want to install, choose LAMP Server and OpenSSH Server
  ![](../uploads/2011/04/server_0010.png "server_0010")
17. At this stage it will probably ask you to set a password for the MySQL root user. Do this and if it’s different from your normal password, remember it as you will need it later
18. Install GRUB to the Master Boot Record
  ![](../uploads/2011/04/server_0011.png "server_0011")
19. The install is now finished, eject the CD and reboot
20. You should be presented with a login screen similar to the following
  ![](../uploads/2011/04/server_0012.png "server_0012")


text:
---
layout:     post
title:      "Look At All That Snow"
subtitle:   "... but where did the trail go?"
date:       "2017-06-16 20:13:40"
author:     "Randall"
header-img: "img/Look-At-All-That-SnowHeader.JPG"
mile:       "751"
---
Today started off with some (hopefully) good karma. I found some sunglasses on the trail and held on to them. A few hours later, two girls passed by and I asked if they lost their sunglasses. She asked if they were Polaroids and I said yes, so she got her sunglasses back.

After that we began to climb. We had camped at about 9,500 feet and were going to climb up over 11,000 today. What should have been a normal climb was made much harder by the elevation. We have Whitney in two days. I hope we can acclimate.

![photo0](/img/Look At All That SnowPost0.JPG)

Water has been plentiful so far with lots of streams and even some larger creeks. Above 10,000 feet there are still large snow patches, creating streams all over. With all that water comes mosquitoes, but today we were lucky enough to not have too many at our break spots.

![photo1](/img/Look At All That SnowPost1.JPG)

Just before cottonwood pass, the trail became almost completely covered in snow. Not that there was snow everywhere, but it was impossible to tell where the trail was. Thankfully there's an app that simply points you in the right direction.

We made our way down into a large snowless meadow and then walked straight up it. We saw a few people trying to follow the actual PCT and they were having a pretty hard time on some steepish snow slopes.

Our goal for the day was Chicken Spring Lake, the first alpine lake of the PCT. After 23 hard miles, we made it to the lake. What do you do when you get to an alpine lake on a hot summer day? You jump in of course!

![photo2](/img/Look At All That SnowPost2.JPG)

Unfortunately for me, the lake was still mostly frozen over, so jumping in was quite a shock to the system. Very refreshing though. After my quick dip, we made camp and cooked dinner. Thankfully the mosquitoes weren't quite as bad up at 11,000 feet where we're camped. I've never slept so high. 😉

![photo3](/img/Look At All That SnowPost3.JPG)

I finally have a good enough view from my tent to post one of those feet in the tent pictures.

Tomorrow we'll be setting ourselves up for summiting Whitney. It's just 15 miles to the junction with the Mt. Whitney trail and then we'll go up as far as we can so we can summit early in the morning.

extension: markdown


text:
# Beyerdynamic T5p
See [usage instructions](https://github.com/jaakkopasanen/AutoEq#usage) for more options and info.

### Parametric EQs
In case of using parametric equalizer, apply preamp of **-6.7dB** and build filters manually
with these parameters. The first 5 filters can be used independently.
When using independent subset of filters, apply preamp of **-6.7dB**.

| Type    | Fc      |    Q | Gain    |
|:--------|:--------|:-----|:--------|
| Peaking | 26 Hz   | 1.78 | -3.2 dB |
| Peaking | 121 Hz  | 2.24 | -3.6 dB |
| Peaking | 1499 Hz | 3.21 | -2.6 dB |
| Peaking | 2124 Hz | 5.8  | -5.0 dB |
| Peaking | 5349 Hz | 3.7  | 6.2 dB  |
| Peaking | 70 Hz   | 5.79 | 3.1 dB  |
| Peaking | 631 Hz  | 7.22 | 3.0 dB  |
| Peaking | 910 Hz  | 2.69 | 2.3 dB  |
| Peaking | 1153 Hz | 6.29 | -3.1 dB |
| Peaking | 2810 Hz | 7.94 | 2.0 dB  |

### Fixed Band EQs
In case of using fixed band (also called graphic) equalizer, apply preamp of **-3.2dB**
(if available) and set gains manually with these parameters.

| Type    | Fc       |    Q | Gain    |
|:--------|:---------|:-----|:--------|
| Peaking | 31 Hz    | 1.41 | -3.5 dB |
| Peaking | 62 Hz    | 1.41 | 2.3 dB  |
| Peaking | 125 Hz   | 1.41 | -3.8 dB |
| Peaking | 250 Hz   | 1.41 | 0.2 dB  |
| Peaking | 500 Hz   | 1.41 | 1.2 dB  |
| Peaking | 1000 Hz  | 1.41 | 0.8 dB  |
| Peaking | 2000 Hz  | 1.41 | -4.6 dB |
| Peaking | 4000 Hz  | 1.41 | 3.3 dB  |
| Peaking | 8000 Hz  | 1.41 | 0.9 dB  |
| Peaking | 16000 Hz | 1.41 | -0.2 dB |

### Graphs
![](https://raw.githubusercontent.com/jaakkopasanen/AutoEq/master/results/headphonecom/sbaf-serious/Beyerdynamic%20T5p/Beyerdynamic%20T5p.png)


text:
# delete-unpaid

Delete all unpaid users accounts that are outside their grace period (years paid = -1)

## Usage

```
usage: rb-ldap delete-unpaid [-h] [--verify-delete]

optional arguments:
  -h, --help       show this help message and exit
  --verify-delete  Flag to indicate to skip prompt

```

repository: butlerx/rb-ldap-python

repo_name: butlerx/rb-ldap-python


text:
# [DEPRECATED] This project is deprecated in favor of [the @noflux project](https://github.com/nofluxjs/noflux)

* A migration document can be found [here](https://noflux.js.org/en/advanced/migration.html).

* 迁移文档请见[这里](https://noflux.js.org/zh/advanced/migration.html)。

---

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

noflux
--------

a simple top down data flow implementation.

install
----

```
npm install noflux
```

usage
-----

```
import {connect, state} from "noflux";
import React from "react";

state.load({
  name: 'jack'
});

@connect
export default class extends React.Component {
    render() {
        return (
            <div>
                <input onChange={e => state.set('name', e.target.value)} />
                <p> hello, my name is {state.get('name')} </p>
            </div>
        )
    }
}
```

The page will be refresh once the state changes.

API
-----

### connect

a function works as decrocation to bind a React class with `state`.
`state` will emit `change` event after its modification and the instance
of the class will be re-rendered.

### pure

a function works as decrocation to make a React class as a pure render component even though you pass cursors
as props.

### state

A instance of [dataton](http://npmjs.com/package/dataton) which implemented Copy-On-Write technique. You can:

- `load`: load data into state.
- `set`: set specific key-value for state.
- `get`: get the correspond value for the provided key.
- `cursor`: get the `cursor` from the provided path.

License
----

MIT

repository: ssnau/noflux

repo_name: ssnau/noflux


text:
# `@hyperledger/cactus-plugin-ledger-connector-xdai`

This plugin provides `Cactus` a way to interact with Xdai networks. Using this we can perform:
* Deploy Smart-contracts through bytecode.
* Build and sign transactions using different keystores.
* Invoke smart-contract functions that we have deployed on the network.
## Summary

  - [Getting Started](#getting-started)
  - [Architecture](#architecture)
  - [Usage](#usage)
  - [Prometheus Exporter](#prometheus-exporter)
  - [Runing the tests](#running-the-tests)
  - [Built With](#built-with)
  - [Contributing](#contributing)
  - [License](#license)
  - [Acknowledgments](#acknowledgments)

## Getting Started

Clone the git repository on your local machine. Follow these instructions that will get you a copy of the project up and running on
your local machine for development and testing purposes.

### Prerequisites

In the root of the project to install the dependencies execute the command:
```sh
npm run configure
```

### Compiling

In the project root folder, run this command to compile the plugin and create the dist directory:
```sh
npm run tsc
```

### Architecture
The sequence diagrams for various endpoints are mentioned below

#### run-transaction-endpoint
![run-transaction-endpoint sequence diagram](docs/architecture/images/run-transaction-endpoint.png)
The above diagram shows the sequence diagram of run-transaction-endpoint. User A (One of the many Users) interacts with the API Client which in turn, calls the API server. API server then executes transact() method which is explained in detailed in the subsequent diagrams.
![run-transaction-endpoint transact() method](docs/architecture/images/run-transaction-endpoint-transact.png)
The above diagram shows the sequence diagram of transact() method of the PluginLedgerConnectorXdai class. The caller to this function, which in reference to the above sequence diagram is API server, sends RunTransactionV1Request object as an argument to the transact() method. Based on the type of Web3SigningCredentialType, corresponsing responses are sent back to the caller.
![run-transaction-endpoint transactCactusKeychainRef() method](docs/architecture/images/run-transaction-endpoint-transact-cactuskeychainref.png)
The above diagram shows transactCactusKeychainReference() method being called by the transact() method of the PluginLedgerConnector class when the Web3SigningCredentialType is CACTUSKEYCHAINREF. This method inturn calls transactPrivateKey() which calls the signTransaction() method of web3 library.
![runtransaction-endpoint transactPrivateKey() method](docs/architecture/images/run-transaction-endpoint-transact-privatekey.png)
The above diagram shows transactPrivateKey() method being called by the transact() method of the PluginLedgerConnector class when the Web3SigningCredentialType is PRIVATEKEYHEX. This method then calls the signTransaction() method of the web3 library.
![run-transaction-endpoint transactSigned() method](docs/architecture/images/run-transaction-endpoint-transact-signed.png)
The above diagram shows transactSigned() method being called by the transact() method of the PluginLedgerConnector class when the Web3SigningCredentialType is NONE. This method calls the sendSignedTransaction() of the web3 library and then calls pollForTxReceipt() method.
![run-transaction-endpoint pollForTxReceipt() method](docs/architecture/images/run-transaction-endpoint-transact-pollfortxreceipt.png)
The above diagram shows pollForTxReceipt() method which is called by the transactSigned() method as described in the previous sequence diagram. This method waits for the block confirmation in a loop and then sends the corresponding response back to the caller.

### Usage

To use this import public-api and create new **PluginFactoryLedgerConnector**. Then use it to create a connector.
```typescript
const factory = new PluginFactoryLedgerConnector({
    pluginImportType: PluginImportType.LOCAL,
  });
  const connector: PluginLedgerConnectorXdai = await factory.create({
    rpcApiHttpHost,
    instanceId: uuidv4(),
    pluginRegistry: new PluginRegistry(),
  });
```
You can make calls through the connector to the plugin API:

```typescript
async invokeContract(req: InvokeContractV1Request):Promise<InvokeContractV1Response>;
async transactSigned(rawTransaction: string): Promise<RunTransactionV1Response>;
async transactPrivateKey(req: RunTransactionV1Request): Promise<RunTransactionV1Response>;
async transactCactusKeychainRef(req: RunTransactionV1Request):Promise<RunTransactionV1Response>;
async deployContract(req: DeployContractV1Request):Promise<RunTransactionV1Response>;
async signTransaction(req: SignTransactionRequest):Promise<Optional<SignTransactionResponse>>;
```

Call example to deploy a contract:
```typescript
const deployOut = await connector.deployContract({
  web3SigningCredential: {
    ethAccount: firstHighNetWorthAccount,
    secret: xdaiKeyPair.privateKey,
    type: Web3SigningCredentialType.PRIVATEKEYHEX,
  },
  bytecode: SmartContractJson.bytecode,
  gas: 1000000,
});
```
The field "type" can have the following values:
```typescript
enum Web3SigningCredentialType {
    CACTUSKEYCHAINREF = 'CACTUS_KEYCHAIN_REF',
    GETHKEYCHAINPASSWORD = 'GETH_KEYCHAIN_PASSWORD',
    PRIVATEKEYHEX = 'PRIVATE_KEY_HEX',
    NONE = 'NONE'
}
```
> Extensive documentation and examples in the [readthedocs](https://readthedocs.org/projects/hyperledger-cactus/) (WIP)

## Prometheus Exporter

This class creates a prometheus exporter, which scrapes the transactions (total transaction count) for the use cases incorporating the use of Xdai connector plugin.

### Prometheus Exporter Usage
The prometheus exporter object is initialized in the `PluginLedgerConnectorXdai` class constructor itself, so instantiating the object of the `PluginLedgerConnectorXdai` class, gives access to the exporter object.
You can also initialize the prometheus exporter object seperately and then pass it to the `IPluginLedgerConnectorXdaiOptions` interface for `PluginLedgerConnectoXdai` constructor.

`getPrometheusMetricsV1` function returns the prometheus exporter metrics, currently displaying the total transaction count, which currently increments everytime the `transact()` method of the `PluginLedgerConnectorXdai` class is called.

### Prometheus Integration
To use Prometheus with this exporter make sure to install [Prometheus main component](https://prometheus.io/download/).
Once Prometheus is setup, the corresponding scrape_config needs to be added to the prometheus.yml

```(yaml)
- job_name: 'xdai_ledger_connector_exporter'
  metrics_path: api/v1/plugins/@hyperledger/cactus-plugin-ledger-connector-xdai/get-prometheus-exporter-metrics
  scrape_interval: 5s
  static_configs:
    - targets: ['{host}:{port}']
```

Here the `host:port` is where the prometheus exporter metrics are exposed. The test cases (For example, packages/cactus-plugin-ledger-connector-xdai/src/test/typescript/integration/plugin-ledger-connector-xdai/deploy-contract/deploy-contract-from-json.test.ts) exposes it over `<IP_ADDRESS>` and a random port(). The random port can be found in the running logs of the test case and looks like (42379 in the below mentioned URL)
`Metrics URL: http://<IP_ADDRESS>:42379/api/v1/plugins/@hyperledger/cactus-plugin-ledger-connector-xdai/get-prometheus-exporter-metrics`

Once edited, you can start the prometheus service by referencing the above edited prometheus.yml file.
On the prometheus graphical interface (defaulted to http://localhost:9090), choose **Graph** from the menu bar, then select the **Console** tab. From the **Insert metric at cursor** drop down, select **cactus_xdai_total_tx_count** and click **execute**

### Helper code

###### response.type.ts
This file contains the various responses of the metrics.

###### data-fetcher.ts
This file contains functions encasing the logic to process the data points

###### metrics.ts
This file lists all the prometheus metrics and what they are used for.

## Running the tests

To check that all has been installed correctly and that the pugin has no errors run the tests:

* Run this command at the project's root:
```sh
npm run test:plugin-ledger-connector-xdai
```

## Contributing

We welcome contributions to Hyperledger Cactus in many forms, and there’s always plenty to do!

Please review [CONTIRBUTING.md](../../CONTRIBUTING.md) to get started.

## License

This distribution is published under the Apache License Version 2.0 found in the [LICENSE](../../LICENSE) file.

## Acknowledgments


text:
**Not happy about naming and scope. This package is therefore discontinued and moved to [a new repo](https://github.com/Frogvall/aspnetcore-exceptionhandler), where it is divided into several packages and names reflect what the package is actually about.**

# AspNetCoreApiUtilities

[![CircleCI](https://circleci.com/gh/schwamster/HttpService.svg?style=shield&circle-token)](https://circleci.com/gh/Frogvall/AspNetCoreApiUtilities)
![#](https://img.shields.io/nuget/v/Frogvall.AspNetCore.ApiUtilities.svg)

AspNetCore Api Utilities for asp.net core that include things like an Exception Handler middleware, modelstate validation by attribute, RequireNonDefault attribute for controller models, and swagger operation filters for 400 and 500.

## Getting started

### Install the package
Install the nuget package from [nuget](https://www.nuget.org/packages/Frogvall.AspNetCore.ApiUtilities/)

Either add it with the PM-Console:

        Install-Package Frogvall.AspNetCore.ApiUtilities

Or add it to csproj file ->
```xml
        <ItemGroup>
                ...
                <PackageReference Include="Frogvall.AspNetCore.ApiUtilities" Version="x.y.z" />
                ...
        </ItemGroup>
```
### Using the utilites

Edit your Startup.cs ->
```cs
        public void ConfigureServices(IServiceCollection services)
        {
          //...

          services.AddExceptionMapper();
          services.AddMvc(options =>
             {
                options.Filters.Add<ApiExceptionFilter>();
             });

          //...
        }

        public void Configure()
        {
           //...

           app.UseApiExceptionHandler();

           //...
        }
```
Create an exeption that inherits BaseApiException ->
```cs
        public class MyException : BaseApiException
```

Create an enum that describes your error codes ->
```cs
        public enum MyErrorEnum
        {
           MyErrorCode = 1337
        }
```

Create one or more exception mapper profiles anywhere in your project. Add mappings in the constructor of the profile ->
```cs
        public class MyMappingProfile : ExceptionMappingProfile<MyErrorEnum>
        {
          public MyMappingProfile()
          {
             AddMapping<MyException>(HttpStatusCode.BadRequest, MyErrorEnum.MyErrorCode);
          }
        }
```
Throw when returning non 2xx ->
```cs
        throw new MyException("Some message.", new { AnyProperty = "AnyValue."});
```
Either add to controller or controller method ->
```cs
        [ValidateModelFilter(ErrorCode = 123)]
```
Or add to the filters of MVC ->
```cs
        services.AddMvc(options =>
           {
               options.Filters.Add(new ValidateModelFilter { ErrorCode = 123 } );
           });
```

Add to controller model (dto) property ->
```cs
        [RequireNonDefault]
```
Add to swagger spec ->
```cs
        options.OperationFilter<ValidateModelOperationFilter>();
        options.OperationFilter<InternalServerErrorOperationFilter>();
```

To consume the api error from another service using this package in an asynchronous context ->
```cs
        var response = await _client.PostAsync(...);
        var error = await response.ParseApiError();
        if (error != null)
        {
            //Handle api error here
        }
        else
        {
            //Handle non-api error here
        }
```

To consume the api error from another service using this package in a synchronous context ->
```cs
        if (response.TryParseApiError(out var error))
        {
            //Handle api error here
        }
        else
        {
            //Handle non-api error here
        }
```

## Build and Publish

### Prequisites

* docker, docker-compose
* dotnet core 2.0 sdk  [download core](https://www.microsoft.com/net/core)

The package is build in docker so you will need to install docker to build and publish the package.
(Of course you could just build it on the machine you are running on and publish it from there.
I prefer to build and publish from docker images to have a reliable environment, plus make it easier
to build this on circleci).

### build

run:
        docker-compose -f docker-compose-build.yml up

this will build & test the code. The testresult will be in folder ./testresults and the package in ./package

! *if you clone the project on a windows machine you will have to change the file endings on the build-container.sh to LF*

### publish

run: (fill in the api key):

        docker run --rm -v ${PWD}/package:/data/package schwamster/nuget-docker push /data/package/*.nupkg <your nuget api key> -Source nuget.org

this will take the package from ./package and push it to nuget.org

### build on circleci

The project contains a working circle ci yml file. All you have to do is to configure the Nuget Api Key in the build projects environment variables on circleci (Nuget_Api_Key)

repository: Frogvall/AspNetCoreApiUtilities

gha_language: C#

repo_name: Frogvall/AspNetCoreApiUtilities


text:
A rule that disallows usage of large numbers without underscore.
These do not affect the value of the number, but can help read
large numbers more easily.

For example, these are considered invalid:

```
10000
141592654
5.12345
```

And has to be rewritten as the following:

```
10_000
141_592_654
5.123_45
```

YAML configuration example:

```
Style/LargeNumbers:
  Enabled: true
  IntMinDigits: 5 # i.e. integers higher than 9999
```

repository: alnzialiksav/codacy-ameba

repo_name: alnzialiksav/codacy-ameba


text:
# RPCProxy

## About

At Thunder, we found ourselves wanting a tool to help us monitor and log the details of our RPC calls. We forked [@ymedialabs' ReverseProxy](https://github.com/ymedialabs/ReverseProxy) and made it pick out the different RPC calls being made.

## Prerequisites

 - Go Version 1.6+
     - Install via https://golang.org/doc/install

## Getting Started

After cloning this repository, run the build script with `sh build.sh`. This will clone the [`go-ethereum`](https://github.com/ethereum/go-ethereum/) repository into your directory (under `src`), adjust your `GOPATH`, and build the binary for RPCProxy.

## Running RPCProxy

By default, RPCProxy will be running on `http://localhost:9999` and it will be forwarding the requests to http://testnet-rpc.thundercore.com:8545. You can specify the forwarding "port" and "url"  by using the `-port` and `-url` command line options.

Running the binary:
```
./RPCProxy
```

Setting new parameters to run the binary with:
```
./RPCProxy -port=9090 -url=http://other_rpc:8545
```

Outputting the contents to a log file:
```
./RPCProxy 2>log.txt
```

## Output

When you run RPCProxy, it will print the port where the proxy is running and where it is redirecting the request to.

When requests start being made, it will print the RPC call and parameters used, the HTTP headers, the raw transaction data, and the response to `stderr`. It should look something like this:

```
eth_getBalance [0x9a78d67096ba0c7c1bcdc0a8742649bc399119c0 latest]
2018/08/06 17:23:57 ----------------New Request-------------------------
 {"id":5289471075661898,"jsonrpc":"2.0","params":["0x9a78d67096ba0c7c1bcdc0a8742649bc399119c0","latest"],"method":"eth_getBalance"}
    Response Time 107301342
    Response Body------
 HTTP/1.1 200 OK
Content-Length: 76
Access-Control-Allow-Origin: chrome-extension://nkbihfbeogaeaoehlefnkodbefgpgknn
Content-Type: application/json
Date: Mon, 06 Aug 2018 21:23:57 GMT
Vary: Origin

{"jsonrpc":"2.0","id":5289471075661898,"result":"0x49fb0a92b073f3c1a2f6cc"}
```

repository: thundercore/RPCProxy

repo_name: thundercore/RPCProxy


text:
# Select Operators

A `SelectOp` is effectively a binary or unary operation which is able to access the location of an element as well as its value.
They define predicates for use with the [`select`](@ref) function.

Applying `select` with a `SelectOp` will always return a result with the same type and shape as its argument.

## Built-Ins

Built-in `SelectOp`s can be found in the `SelectOps` submodule.

```@autodocs
Modules = [SuiteSparseGraphBLAS]
Pages   = ["selectops.jl"]
```


text:
# 0.1.0
=======
* writing spreadsheet files no longer rely on a temporary file
* `SpreadsheetWriter` is now an `EventEmitter` and fires `open`, `close` and `error` events
* `SpreadsheetWriter.save` no longer accept a path argument, path is now assigned via the constructor instead
* `SpreadsheetWriter.save` no longer return a `stream.Readable` when callback is omitted
* `SpreadsheetWriter.destroy` has been removed, use `save` instead to close the underlying process
* Incomplete integration of xlwt for writing native XLS files

# 0.0.4
=======
* JSHint linting and fixes
* minor changes to coding style
* refactoring for removal of dependencies (underscore and async)
* improved compatibility of installation script

# 0.0.3
=======
* bug fixes
* improved debugging with [debug](visionmedia/debug)

# 0.0.2
=======
* documentation

# 0.0.1
=======
* initial version
* moved from [extrabacon/xlrd-parser](https://github.com/extrabacon/xlrd-parser)
* added support for writing XLSX

repository: Minabud/pyspreadsheet

repo_name: Minabud/pyspreadsheet


text:
---
title : "LeLe_Farley:Big Breasted Cheerleaders Protest at Chinese Embassy "
title2 : "Big Breasted Cheerleaders Protest at Chinese Embassy "
info2 : "Exclusive footage of well-endowed cheerleaders protesting for reform within the Chinese government at the Chinese Embassy in Los Angeles, California. The Chinese Communist Party has ensured its place as the enemy of the free world, but how do we go about toppling the current leadership and bringing about long-awaited reform?  Please remember to like, comment, and subscribe! @LeLe Farley  Adam Smith’s Instagram: @adam.smith  Also, please feel free to show support for my (flagged) content via patreon/Paypall! https://www.patreon.com/Lelefarley  https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick hosted_button_id=LLXE38H9TQDX4 source=url "
date:        2020-06-26T16:07:58-07:00
author:
 - youtube_LeLe_Farley
tags:
 - youtube
 - LeLe_Farley
 - youtube_LeLe_Farley
 - 2020_06
 - 2020_0626
 - 2020_0626_16
categories:
 - 2020_0626
#icon:        "fas fa-lock-open"
#resImgTeaser: teaserpics/wikipedia.org/emacs-jokes.png
---

{{< mydiv text="LeLe_Farley:Exclusive footage of well-endowed cheerleaders protesting for reform within the Chinese government at the Chinese Embassy in Los Angeles, California. The Chinese Communist Party has ensured its place as the enemy of the free world, but how do we go about toppling the current leadership and bringing about long-awaited reform?  Please remember to like, comment, and subscribe! @LeLe Farley  Adam Smith’s Instagram: @adam.smith  Also, please feel free to show support for my (flagged) content via patreon/Paypall! https://www.patreon.com/Lelefarley  https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick hosted_button_id=LLXE38H9TQDX4 source=url "
>}}

{{< my2mp4withjpgdownload mp4="20200625_4Uespw_0qXc.mp4"
>}}
{{< my2mp4withjpgdownload mp4="20200625_4uespw_0qxc.webm"
>}}

{{< my2jpgexist "xx1.jpg" >}}

{{< my2jpgexist "xx2.jpg" >}}

{{< my2jpgexist "xx3.jpg" >}}

{{< mydiv text="LeLe_Farley:Big Breasted Cheerleaders Protest at Chinese Embassy "
>}}

{{< my2linktextonly link="https://www.youtube.com/watch?v=4Uespw_0qXc"
>}}

{{< my2buttoncopy2clip "music.xspf"        "blue"   "red"    " 单曲 "  "复制 VLC 播放器使用的链接：单曲" >}} {{< my2buttoncopy2clip "/all.xspf"         "green"  "black"  " 全部 "  "复制 VLC 播放器使用的链接：全部" >}} {{< my2buttoncopy2clip "music.m3u8"        "blue"   "red"    " M3U  "    "复制 M3U 播放器使用的链接：单曲" >}} {{< mybr2 >}} {{< my2buttoncopy2clip ""                  "green"  "black"  " 本页 "    "复制 本页的网址 " >}} {{< my2buttoncopy2clip "/"                 "black"  "red"    " 主站 "    "复制 主站的网址 " >}} {{< mybr2 >}} {{< my2buttongoto      "/hot/endothers/"   "blue"   "red"    " 月份"   "转到月份总目录" >}} {{< my2buttongoto      "/hot/alltags/"     "green"  "blue"   " 列表"   "转到文章总列表" >}} {{< my2buttongoto      "/hot/helpxspf/"    "green"  "blue"   " 播放器" "如何使用 VLC 播放器或者 IPTV 播放器的教程" >}}


text:
# Movies App Demo
Welcome to Movies App Demo project :wave:

### What is it about?
Movies App Demo is a React app where I do experimentations (such as navigation and styling) for remote controller based devices. It works on Chrome desktop browser for now and supports HD (1280p) and FHD (1920p) resolutions. Data comes from [The Movie Database](https://www.themoviedb.org/) API.

### Demo
CI automatically deploys it to Firebase when merged to master, which you can check see it up and running through https://movies-app.iepsen.com.

**Note:** For a better experience consider to add 1280p and 1920p breakpoints to Developer Tools.

repository: iepsen/movies-app-demo

repo_name: iepsen/movies-app-demo


text:
# PopupViewController

`UIAlertController` drop in replacement with much more customization

You can literally replace `UIAlertController` by `PopupViewController` and `UIAlertAction` by `PopupAction` and you're done. Does not support Action Sheet for now, just alert mode.

Simple example.

``` Swift
  let alert = PopupViewController(title: "Alert title", message: "Alert message, which can be very long and etc....")
  alert.addAction(PopupAction(title: "Ok", type: .positive, handler: nil))
  present(alert, animated: true, completion: nil)
```

Result:

![Dark alert](https://raw.githubusercontent.com/Dimillian/PopupViewController/master/Images/classy.png)

By default it come with a dark theme, but where it become powerful is that you can customize it.

Example:

``` Swift
  var customizable = PopupViewController.Customizable()
  customizable.titleColor = UIColor.blue
  customizable.positiveActionColor = UIColor.red
  customizable.messageColor = UIColor.brown
  customizable.messageFont = UIFont.boldSystemFont(ofSize: 22)
  customizable.negativeActionColor = UIColor.brown
  customizable.positiveActionColor = UIColor.blue
  customizable.negativeActionBackgroundColor = UIColor.black
  customizable.positiveActionBackgroundColor = UIColor.white
  customizable.positiveActionHighlightColor = UIColor.green
  customizable.negativeActionHighlightColor = UIColor.red

  let alert = PopupViewController(title: "Alert title",
                                        message: "Alert message, which can be very long message and all that but nobody will ever read it.",
                                        customizable: customizable)
  alert.blurStyle = .extraLight
  alert.addAction(PopupAction(title: "Ok", type: .positive, handler: nil))
  alert.addAction(PopupAction(title: "Cancel", type: .negative, handler: nil))
  present(alert, animated: true, completion: nil)
```

Result:

![Ugly alert](https://raw.githubusercontent.com/Dimillian/PopupViewController/master/Images/ugly.png)

Yes this is very ugly. But you know...

You can also set a static `Customizable`, it'll be re used if you pass no customizable in the `PopupViewController` constructor.

``` Swift
  var customizable = PopupViewController.Customizable()
  customizable.titleColor = UIColor.blue
  customizable.positiveActionColor = UIColor.red
  customizable.messageColor = UIColor.brown
  customizable.messageFont = UIFont.boldSystemFont(ofSize: 22)
  customizable.negativeActionColor = UIColor.brown
  customizable.positiveActionColor = UIColor.blue
  customizable.negativeActionBackgroundColor = UIColor.black
  customizable.positiveActionBackgroundColor = UIColor.white
  customizable.positiveActionHighlightColor = UIColor.green
  customizable.negativeActionHighlightColor = UIColor.red
  PopupViewController.sharedCustomizable = alertCustomizable
```
## Todo
* [ ] Action Sheet support
* [ ] UITextFields Support
* [ ] Custom view support
* [ ] Shared Customizable configuration
* [ ] Remove cartography dependency
* [ ] Easier custom transition overwrite
* [ ] Better default transition

## Installation

### Normal

Add `pod 'PopupViewController'` in your podfile and then run `pod install`

### Dev mode

Clone this repository and and run `pod install` in both the PopupViewController and Example directory.

repository: Dimillian/PopupViewController

gha_language: Swift

repo_name: Dimillian/PopupViewController


text:
# thepill
Decision Trees with Neo4J

![](https://github.com/manojlds/thepill/workflows/Build/badge.svg)

[Features](#features) | [Example](#example) | [Procedure Installation](#procedure-installation) | [Extension Installation](#extension-installation) | [Build](#build) | [Notes](#notes)

## Features

Model decision trees using Neo4j and Javascript based decision evaluation.

## Example

```
CREATE (tree:Tree { name: 'neo' })
CREATE (red:Leaf { value: 'knowledge' })
CREATE (blue:Leaf { value: 'ignorance' })
CREATE (pill: Decision { name: 'Red Pill Or Blue Pill', question: 'Red Pill Or Blue Pill',
  choice: 'result = {relationship: \"RED\"}; if(chosenColor === \"blue\") result = {relationship: \"BLUE\"};' })
CREATE (tree)-[:HAS]->(pill)
CREATE (pill)-[:RED]->(red)
CREATE (pill)-[:BLUE]->(blue)
```
Traverse the decision tree and make a decision:

```
CALL com.stacktoheap.thepill.make_decision('neo', {chosenColor: "blue"}) yield path return path
```

### Example explained

Create the root of the tree:

```
CREATE (tree:Tree { name: 'neo' })
```

Create the final decision for the tree (the leaves):

```
CREATE (red:Leaf { value: 'knowledge' })
CREATE (blue:Leaf { value: 'ignorance' })
```

Create the decision node with result evaluation using JS code:

```
CREATE (pill: Decision { name: 'Red Pill Or Blue Pill', question: 'Red Pill Or Blue Pill',
  choice: 'result = {relationship: \"RED\"}; if(chosenColor === \"blue\") result = {relationship: \"BLUE\"};' })
```

`result` is the variable that is used to make the decision. It is to be set to an object with two properties:

- `relationship` - The relationship type for the chosen decision
- `properties` - Map of properties that choose the next node (useful if there are multiple relationships of the same type)

The variables available in the choice script are facts supplied to the tree at evaluation time (see below)

Create the relationships:

```
CREATE (tree)-[:HAS]->(pill)
CREATE (pill)-[:RED]->(red)
CREATE (pill)-[:BLUE]->(blue)
```

Traverse the tree and make decision:

```
CALL com.stacktoheap.thepill.make_decision('neo', {chosenColor: "blue"}) yield path return path
```

## Procedure Installation

1. Download the latest jar from https://github.com/manojlds/thepill/releases

2. Copy the jar to the plugins folder of Neo4J instance - `<neo4j-home>/plugins`

3. To use property based leaves, set the following configuration in `<neo4j-home>/conf/neo4j.conf`:

    ```
    thepill.property_based_leaves=true
    thepill.thepill.leaves_property=is_leaf
    ```

    With property based leaves enabled, existing nodes can be reused as leaves in the decision tree by adding the property specified by the `thepill.thepill.leaves_property` configuration.

4. (Re)Start the server

5. Apply the schema for thepill:

    ```cypher
    CALL com.stacktoheap.thepill.schema.generate
    ```

 ## Extension Installation

 The optional unmanaged server extension can be installed as follows:

 1. Download the latest jar from https://github.com/manojlds/thepill/releases

 2. Copy the jar to the plugins folder of Neo4J instance - `<neo4j-home>/plugins`

 3. Add the following configuration in `<neo4j-home>/conf/neo4j.conf`:

    ```
    dbms.unmanaged_extension_classes=com.stacktoheap.thepill=/thepill

    ```
 4. Restart the server

 5. The `<server>/thepill/make_decision` endpoint is available for use. Example:

    ```shell
    curl -H 'Content-Type: application/json' -X POST  http://localhost:7474/thepill/make_decision/neo -d "{\"chosenColor\": \"blue\"}"
    ```

## Build

Compile and run tests with `./gradlew build`

Create fat jar with `./gradlew shadowJar`

## Notes

Based on - https://github.com/maxdemarzi/decision_trees_with_rules

Differs in the following ways:

1. Uses Javascript for script evaluation rather than Java.
2. Ability to choose relationships based on properties.
3. No insecure APIs usage.
4. Updated for latest Neo4j and written in Kotlin.

repository: manojlds/thepill

gha_language: Kotlin

repo_name: manojlds/thepill