text:
## `zipcat`

`zipcat` is a command-line utility that lets you pipe the contents of one or more compressed files to `stdout`, letting you easily search the contents of zip archives and more. `zipcat` has full support for actual zip archives (not just gz/deflate-compressed content), and provides options to optionally filter the files included/excluded from the enumeration.

### Installation

`zipcat` binaries are available via `cargo`, the rust package manager, as follows:

`cargo install zipcat`

Downloads for Windows are also available pre-compiled from NeoSmart Technologies at the `zipcat` homepage at https://neosmart.net/zipcat/

### Usage

    Usage: zipcat ZIPFILE [options]
    Pipes content of compressed file(s) within a zip archive to stdout

    Options:
        -h, --help          print this help menu
        -s, --silent        suppress file names from being sent to stderr
        -x, --exclude PATTERN
                            exclude file(s) matching pattern (can use more than
                            once)
        -i, --include PATTERN
                            include only file(s) matching pattern (can use more
                            than once)

By default, `zipcat` will pipe the contents of all files it encounters in the zip archive. Contents are written to `stdout`, prefixed with a single line containing the filename that is output to `stderr` (so it is always safe to perform operations on `stdout`). This behavior can be disabled via the `--silent` flag.

For pattern matching, `zipcat` supports filtering which files will be printed to `stdout` via the `--include` and `--exclude` command line arguments (which may be used repeatedly to add additional include/exclude patterns). Not providing any `--include` filters is synonymous with a default `*` include filter to include all files from the archive in the output. `zipcat` uses [rust's `glob` library](https://doc.rust-lang.org/glob/glob/index.html) for pattern matching include/exclude filters. Filters should match the entire path within the archive (no leading `.` or `/` is required), rather than being a partial match. `*` will match any pattern in a filename, and `**` can be used to glob across sudirectories.

repository: neosmart/zipcat

repo_name: neosmart/zipcat


text:
# bubble-io-python
This library provides Python objects that interface with the client API available on the wonderful "no-code" platform [Bubble.io](https://Bubble.io).

Expect this library to be incomplete and not suitable for production use. I wrote this because I needed Python to talk with Bubble for some small projects. I didn't find existing libraries.

It's not comprehensive. I add functions/objects as I need them. I have limited Python skills, so I'm happy to receive all manner of pull requests.

## Usage examples
### Getting data from a dev instance via the default URL with API token provided as a variable
```python
from bubble_io.bubbleio import BubbleIo

# If api_token is provided it will use that for authentication, otherwise it will use the environment variable
# named "BUBBLEIO_API_TOKEN"
bubbleio = BubbleIo("my-app-name", api_token="01234567890123456789012345678901")

print(bubbleio.get_things_all("Furniture Inventory"))
```

### Getting data from a live instance via a custom URL and API token in an environment variable

```python
from bubble_io.bubbleio import BubbleIo

# api_token is set in the environment variable named "BUBBLEIO_API_TOKEN"
# A custom domain name "mygreatapp.com" has been set up for the app on Bubble
bubbleio = BubbleIo("my-app-name", domain_name="mygreatapp.com", live=True)

print(bubbleio.get_things_all("Furniture Inventory"))
```

license: MIT

repository: jasontyping/bubble-io-python

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: jasontyping/bubble-io-python


text:
# TileCubes 1.0

## Abstract

TileCubes are JSON representations of multidimensional data with
geospatial coordinates. TileCubes are broken into two document types,
the Metadata and the Tiles. The Metadata document describes the shared
information across the TileCube dataset. For each tile requested there
is a Tile document returned that describes the data on that tile.

TileCubes are referenced on the [Tile Map Service Specification]
(http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification)
and are currently restricted to [global-mercator]
(http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification#global-mercator).
Coordinates within a TileCube are measured in pixel offsets from the
border and assume 256x256 pixel tiles.

## Metadata

The TileCube Metadata document describes key tileset information,
include zoom extents, pixel resolution, dimension names, and authors.

TODO

* tile type
 * core
 * single dimension with values
 * key value

* pixel dimension description
 * how it is defined
 * how it changes x,y coordinates/offsets

#### Schema

## Tiles

Tiles are required to contain a core set of information to be rendered,
that information includes the number of pixels with data, and the x and
y values for each pixel. From that core schema, TileCubes can be extended
to facilitate more advanced datasets

#### Core tile

```json
[
	4,
	1, 4, 5, 9,
	4, 5, 1, 3
]
```

### Single dimension with values

#### Schema

The single dimension extends the core tile with pixel based values. A
first series of integers describe the number of values found for each
pixel. The values of each pixel are then listed in order.

```json
[
	4,          # number of pixels
	1, 4, 5, 9, # x coordinates
	4, 5, 1, 3, # y coordinates
	1, 1, 1, 2, # number of values in each pixel
	2,          # value in the first pixel
	4,          # value in the second pixel
	1,          # value in the third pixel
	5, 4        # values in the fourth pixel
]
```

In the above example, just like our core above, we report the number
of pixels with events followed by the x coordinates and then the y
coordinates. In the third row we list the number of values to expect in
each pixel. So in this case, pixels 1-3 only have a single value. The
last pixel has two values. In the final row, we list the value of each
event. We see values 2, 4, 1 for pixels 1 through 3 respectively. Finally,
for pixel 4, we see one value of 5 and a second value of 4.

##### Example

This might be used to (e.g.) represent the year something happened (at each pixel)

```json
[
  3,                # three pixels have data
  243, 12, 27,      # x coordinates of pixels
  246, 5, 122       # y coordinates of pixels
  3, 1, 2,          # number of values found in each of the pixels
  2010, 2011, 2013, # the values for pixel 1  (e.g. it happened in 2010, 2011 and 2013)
  1978,             # the values for pixel 2
  1983, 1984        # the values of pixel 3
]
```

**Note**: In practice one might compress this further by counting the
          years passed from some start.  E.g. given a start year of 1970,
          the values for 2010, 2011 and 2013 would become 40,41,43 which
          uses less bytes

#### Content

### Key-value tiles

#### Schema

It is also possible to extend this, and encode key value pairs into a
single tile.  This might be used to (e.g.) provide the number of events
per month (at each pixel)

```json
[
  3,           # three pixels have data
  243, 12, 27, # x coordinates of pixels
  246, 5, 122  # y coordinates of pixels
  3, 1, 2,     # number of dimension pairs found in each of the pixels
  1, 2, 3,     # the values for the first dimension of pixel 1
               # (i.e. months Jan,Feb,Mar)
  12, 2, 3,    # the values for the second dimension of pixel 1
               # (i.e. Jan=12, Feb=2, Mar=3)
  11,          # pixel 2 dimension 1
  34,          # pixel 2 dimension 2 (i.e. asserts that November=34)
  10, 12       # pixel 3 dimension 1
  1, 127       # pixel 3 dimension 2
]
```

#### Content

repository: oss-spanish-geoserver/torque-tiles

repo_name: oss-spanish-geoserver/torque-tiles


text:
# exploring-travis-php
Showing PHP configuration parameters on Travis CI

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

## phpenv
Two versions of phpenv exist:
* [CHH/phpenv](https://github.com/CHH/phpenv) used by Travis [Building a PHP project](https://docs.travis-ci.com/user/languages/php/) and
* [phpenv/phpenv](https://github.com/phpenv/phpenv) which has more documentation (which may apply to CHH/phpenv).

### config-rm
`phpenv config-add xdebug.ini` does not work after `phpenv config-rm xdebug.ini`.

## [html visual diff](https://www.google.com/search?q=html+visual+diff)
* *[HtmlDiff](https://www.w3.org/wiki/HtmlDiff)* @w3.org

## PHPUnit
Is not always up to date to minor or major version in Travis, but fairly good. The Travis phpenv version cannot be updated or upgrated (PHPUnit 4, 5, 6, 7). Install PHPUnit with composer for latest version.

## sensiolabs/security-checker
* [An error occurred: gnutls_handshake() failed: Handshake failed](https://github.com/sensiolabs/security-checker/issues/100)

repository: travis-util/exploring-travis-php

repo_name: travis-util/exploring-travis-php


text:
# Vulnerability Report
## 1. Missing policies and authorization on controllers
### Exposure
Missing function level access control is when you have a resource (object) which can be accessed by a reference then you need to ensure that the user is intended to be there.</p>

Authorize users on all externally facing endpoints to make sure that they are in fact supposed to be there.  This could affect the site by having malicious users trying to gain access in restricted locations.

### Repair
We need to add the data annotations at the top of our controllers to authorize access to the pages:

```
	[Authorize(Roles = "Member")]
```

### Resources
https://www.owasp.org/index.php/.NET_Security_Cheat_Sheet#Data_Access

## 2.  Sensitive data exposure
### Exposure
Storing encrypted passwords and not using a strong enough hash leaves the users information highly vulnerable to attacks.  If a hacker can gain access and correctly solve the hashing, then they can gain access to other passwords as well.

We fortunately used Microsoft Identity in our site which salts and hashes all sensitive information and stores it in a separate database for this specific reason.  No changes had to be made.

### Repair
Microsoft Identity was used.

### Resources
https://www.owasp.org/index.php/.NET_Security_Cheat_Sheet#Data_Access

## 3.  Account Access Attemps - Active Prevention of Unauthorzied Access
### Exposure
#### A2 Weak Account management
We did not limit the amount of failed attemps and log the login screen for previously created accounts.

### Repair
We could enact a limit on login attempts and time the user out once the max login attempts are reached. Adding login attempt limits and time outs will add a layer against brute force attacks.
```
SELECT [Count] = COUNT(*) FROM dbo.FailedAttempts WHERE Username=@Username AND Occurred > DATEADD(MINUTE, -30, GETDATE())
```

### Resources
https://www.owasp.org/index.php/.NET_Security_Cheat_Sheet#Data_Access
https://www.codeproject.com/Questions/422772/how-to-restrict-user-for-minutes-after-invali
https://stackoverflow.com/questions/15302270/how-do-i-create-a-limit-of-logins-on-my-login-screen

## 4.  Use of default passwords
### Exposure
#### A5 Security Misconfiguration
We did not use a default password however we use Microsoft Identity to persist the suer password throughout the our site. We could add another layer of secity to the project.

### Repair
Ensure debug and trace are off in production. This can be enforced using web.config transforms:
```
   <compilation xdt:Transform="RemoveAttributes(debug)" />
   <trace enabled="false" xdt:Transform="Replace"/>

DO NOT: Use default passwords

DO: (When using TLS) Redirect a request made over Http to https: In Global.asax.cs:

protected void Application_BeginRequest() {

   #if !DEBUG
           // SECURE: Ensure any request is returned over SSL/TLS in production
           if (!Request.IsLocal && !Context.Request.IsSecureConnection) {
               var redirect = Context.Request.Url.ToString().ToLower(CultureInfo.CurrentCulture).Replace("http:", "https:");
               Response.Redirect(redirect);
           }
   #endif

}
```

### Resources
https://www.owasp.org/index.php/.NET_Security_Cheat_Sheet#Data_Access

gha_language: C#

gha_license_id: MIT


text:
![image](../images/confluent-logo-300-2.png)

# Overview

This example shows how KSQL can be used to process a stream of click data, aggregate and filter it, and join to information about the users.
Visualisation of the results is provided by Grafana, on top of data streamed to Elasticsearch.

# Documentation

You can find the documentation for running this example and its accompanying tutorial at [https://docs.confluent.io/platform/current/tutorials/examples/clickstream/docs/index.html](https://docs.confluent.io/platform/current/tutorials/examples/clickstream/docs/index.html?utm_source=github&utm_medium=demo&utm_campaign=ch.examples_type.community_content.clickstream)

repository: confluentinc/examples

gha_language: Shell

repo_name: confluentinc/examples


text:
# haskell-stack-buildpack
A stack-based cloud foundry buildpack for haskell.

# Troubleshooting
Make sure to set disk_quota in your mainfest.yml to larger than 1G. If you run into disk space
issues, this may resolve them.

repository: spinfooser/haskell-stack-buildpack

repo_name: spinfooser/haskell-stack-buildpack


text:
# Export Custom Routes

#### Why This Error Occurred

In your `next.config.js` you defined `rewrites`, `redirects`, or `headers` along with `output: 'export'` (or you ran `next export`).

These configs do not apply when exporting your Next.js application manually.

#### Possible Ways to Fix It

- Remove `rewrites`, `redirects`, and `headers` from your `next.config.js` to disable these features or
- Remove `output: 'export'` (or `next export`) in favor of [`next start`](https://nextjs.org/docs/api-reference/cli#production) to run a production server

### Useful Links

- [Deployment Documentation](https://nextjs.org/docs/deployment)
- [`output: 'export'` Documentation](https://nextjs.org/docs/advanced-features/static-html-export)
- [Rewrites Documentation](https://nextjs.org/docs/api-reference/next.config.js/rewrites)
- [Redirects Documentation](https://nextjs.org/docs/api-reference/next.config.js/redirects)
- [Headers Documentation](https://nextjs.org/docs/api-reference/next.config.js/headers)

branch_name: refs/heads/canary


text:
# jest-marmot
> JS Integration Test DSL

### Heavily inspired by the RoR testing frameworks

[![NPM Version][npm-image]][npm-url]
[![Linux Build][travis-image]][travis-url]

## Install
```bash
npm i --save-dev jest-marmot
```

## Usage
For a full redux/react-router example, see the redux [test app](https://github.com/axehomeyg/jest-marmot-test-app).

```javascript
import Marmot, {scenario} from 'jest-marmot'
import {MyRootComponent} from 'myRootComponent'

Marmot.root(() => <MyRootComponent />)

describe("My Feature", () => {
  scenario("My specific scene")
    .see("Hey Fella")
    .fillIn("Email"<EMAIL_ADDRESS>    .click({testId: "submit"})
    .see("Welcome, " +<EMAIL_ADDRESS>    .run()
})
```
## Advanced Setup

### Redux/ReactRouter w/ global setup

You'll want to configure Marmot global settings in your jest setup file.

e.g. in setupTests.js - configured from your package.json

```javascript
import React from 'react'
import Marmot from "jest-marmot"
import App from "./App.js"
import React from 'react'

// If you use react-router + history
import { MemoryRouter as Router } from 'react-router-dom'
import history from "singletonHistoryFile"

// If you use Redux/Thunk
import { applyMiddleware, createStore }  from 'redux'
import { Provider } from 'react-redux'
import thunk from 'redux-thunk'

// You're actual root reducer
import reducer from '../reducers/rootReducer'
import Mocks from 'yourDbApiMock'

// Setup/teardown your db/api mock
Marmot.on('begin')(opts => opts.data && Mocks.mockBackend(opts.data))
Marmot.on('cleanup')(() => Mocks.reset())

// Set root to be first non-Provider-wrapped component at top-level
Marmot.root(() => <App />)

// Let Marmot know what to use when 'visiting' a url
Marmot.router(() => history)

// Provider wrappers to be layered onto our rendered root
Marmot.renderer((component, options) => <Router>{component}</Router>)
Marmot.renderer((component, options) => <Provider>{child}</Router>)
```

Then in your tests, you can simply...
```javascript
import {scenario} from 'jest-marmot'

scenario("My test which assumes App is our entry point")
  .see("Homepage content")
  .click("Have A Go!")
  .see("Had a Went!")
  .run()
```

### Reusable steps/flows
An argument could be made that reusable flows are a sign of redundant testing with a need for a more balanced test pyramid. Alas, you may not have a choice in a large existing test suite! Marmot's step array support is just what the doctor ordered!

In your tests, you could do something like this.
```javascript
import {scenario} from 'jest-marmot'
import common from './steps/common'

scenario("A tour by an anonymous visitor")
  .see("Homepage content")
  .steps(common.tour)
  .see("Thanks for taking the tour")
  .run()

scenario("A tour by an identified user")
  .see("Homepage content")
  .fillIn("Name", "Billy")
  .steps(common.tour)
  .see("Thanks for taking the tour, Billy")
  .run()
```
Then, in ./steps/common.js
```javascript
export default common = ({
  tour: [
    ["click", "Start Tour"],
    ["see", "Step 1"],
    ["click", "Proceed"],
    ["see", "Step 2"],
    ["click", "Finish"],
  ]
})
```

## Troubleshooting

## License

[MIT](http://vjpr.mit-license.org)

[npm-image]: https://img.shields.io/npm/v/jest-marmot.svg
[npm-url]: https://npmjs.org/package/jest-marmot
[travis-image]: https://img.shields.io/travis/axehomeyg/jest-marmot/master.svg
[travis-url]: https://travis-ci.org/axehomeyg/jest-marmot

repository: axehomeyg/jest-marmot

gha_language: JavaScript

repo_name: axehomeyg/jest-marmot


text:
### [CVE-2020-24772](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-24772)
![](https://img.shields.io/static/v1?label=Product&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=n%2Fa&color=brighgreen)

### Description

In Dreamacro Clash for Windows v0.11.4, an attacker could embed a malicious iframe in a website with a crafted URL that would launch the Clash Windows client and force it to open a remote SMB share. Windows will perform NTLM authentication when opening the SMB share and that request can be relayed (using a tool like responder) for code execution (or captured for hash cracking).

### POC

#### Reference
- https://github.com/Dreamacro/clash/issues/910

#### Github
No PoCs found on GitHub currently.

repository: trickest/cve

branch_name: refs/heads/main

gha_language: HTML

repo_name: trickest/cve


text:
# AkCache

Tiny, distributed, and embeddable cache for Akka based applications. Includes a drop-in replacement for Play Framework's Cache API.

## Getting started

```
libraryDependencies += "com.nconnor" %% "akcache" % version
```

Play Framework:

    *
    *
    *

## Contributing

We would appreciate your help in maintaining and improving AkCache. Please contribute by raising issues/making pull requests.

repository: nkconnor/akcache

repo_name: nkconnor/akcache


text:
---
title: Providing Documents
---

There are few ways of providing operations and fragments (documents in general).

## JavaScript and TypeScript files

GraphQL Inspector support glob pattern.

    ./src/app/**/*.ts

Given example above, Inspector will search every file that matches that pattern and extract operations and fragments wrapped with `gql` or `graphql` template literal tag.

Supported extensions: `.ts`, `.tsx`, `.js` and `.jsx`

## GraphQL files

GraphQL Inspector support glob pattern.

    ./src/app/**/*.graphql

Given example above, Inspector will search every file that matches that pattern and extract operations and fragments.

Supported extensions: `.graphql`, `.graphqls` and `.gql`.

> ⚠ Remember to wrap a glob pattern with quotes: `"./src/app/**/*.graphql"` ⚠

## Programmatic API

If you are using programmatic API, you might find `@graphql-tools/load` package useful for loading documents. Learn more [here](https://www.graphql-tools.com/docs/documents-loading).

```js
const { validate } = require('@graphql-inspector/core');
const { loadDocuments } = require('@graphql-tools/load');
const { GraphQLFileLoader } = require('@graphql-tools/graphql-file-loader');
const graphql = require('graphql');

const documents = loadDocuments('./src/**/*.graphql', {
    loaders: [
        new GraphQLFileLoader()
    ]
});

// Convert documents to the format expected by "validate" function
const sources = documents.map(doc => {
    return new graphql.Source(graphql.print(doc.document), doc.location);
});

const invalidDocuments = validate(schema, sources);
```


text:
# Deploying Scality Connect with Linux VM Scale Set

The following template deploys a Linux VM Scale Set to run Scality Connect as an
enterprise solution.

The template deploys a Linux VMSS with a level 4 load balancer (which will be the
endpoint that users send requests to) and the number of VM instances specified
in `azuredeploy.parameters.json`.

Each VM instance will have Scality Connect running. The user will have to provide
the proper credentials for a pre-existing storage account upon startup.

We do not enable auto-scaling. The admin has control of how many VM's are running
at all times. To scale up, simply go to the Azure portal and add an instance.
The instance will come on line and Scality Connect will be running without the
admin having to ssh into the machine.

Before we begin, you should have the following:

- a valid domain name
- SSL certificates associated with the domain name and signed by a certificate
authority
- A valid VHD image (Please contact Scality) stored in your Azure account, in the
same region as your deployment.

To deploy this template from the command line, please make a copy of
`connectdeploy.sample.template.json` and rename as `azuredeploy.parameters.json`.

Run the `keyvault.sh` to upload your private key and corresponding .crt file to
keyvault.

```
./keyvault.sh <keyvaultname> <resource group name> <location> <secretName> \
    <certpemfile> <keyfile>
```

The script automatically replaces any dummy values in `azuredeploy.parameters.json`
starting with "REPLACE_".

For your remaining certificates, please upload them to a blob storage account.
Generate a SAS url to be set as the `CACertSAS` parameter value during deployment.

Note: Use the same location (or region, such as Central US, West Central US) for all
your resources - VHD image, Key Vault, and final deployment.

Update the remaining values in `azuredeploy.parameters.json` to your deployment
values, then run the following commands:

```
# Create a new resource group in your preferred location (or use an existing rg)
az group create --name examplegroup --location "yourfavoritelocation"
# Execute the following command, with the correct resource group name
az group deployment create \
    --name ExampleDeployment \
    --resource-group examplegroup \
    --template-file azuredeploy.json \
    --parameters @azuredeploy.parameters.json
```

To deploy this template through the Azure portal web interface, please use the
"Deploy to Azure" button at the bottom of this page.

[![](http://azuredeploy.net/deploybutton.png)](https://portal.azure.com/#create/Microsoft.Template/uri/https%3A%2F%2Fraw.githubusercontent.com%2FScality%2Fazure-templates%2Fmaster%2Fenterprise%2Fazuredeploy.json)

repository: scality/azure-templates

repo_name: scality/azure-templates


text:
# Cosmic System VM builder
This builds a systemvm template with Packer to be used with the Cosmic Cloud Orchestrating Platform.

## Download pre-build templates
[![Build Status](https://beta-jenkins.mcc.schubergphilis.com/job/cosmic-systemvm/job/packer-build/badge/icon)](https://beta-jenkins.mcc.schubergphilis.com/job/cosmic-systemvm/job/packer-build/)
Every night Jenkins builds systemvm templates from this repository. [Find them here](https://beta-jenkins.mcc.schubergphilis.com/job/cosmic-systemvm/job/packer-build/).

## Requirements
- [Packer](http://packer.io)
- [Qemu](http://wiki.qemu.org/Main_Page)
- Libguestfs / libguestfs-tools (virt-sparsify)

A [Bubble](https://github.com/MissionCriticalCloud/bubble-blueprint) is perfectly suited for this task.

## Usage
`./build.sh`

![screen shot 2016-04-03 at 19 51 18 pm](https://cloud.githubusercontent.com/assets/1630096/14233892/95dfcde2-f9d5-11e5-8619-72055519a657.png)

![screen shot 2016-04-03 at 20 15 24 pm](https://cloud.githubusercontent.com/assets/1630096/14234036/e0621bc4-f9d8-11e5-9a2e-dbde2ec233b9.png)

## Artifacts
Artifacts are a compressed QCOW2 and a VHD systemvm image in the `./packer_output` folder.

![screen shot 2016-04-03 at 19 50 36 pm](https://cloud.githubusercontent.com/assets/1630096/14233897/bedc461c-f9d5-11e5-80e3-9d5f069efbbf.png)

## Versioning of the Cosmic System VMs
The build script will generate a new version every day. On `April 3rd 2016`, the version would be `16.4.3`, etc. This is done so that it can be easy upgraded and that it is visible when the image was build (and thus which security patches are included).

Previously, only during version upgrades a new systemvm template was introduced. Starting with version `4.6` this was only done when needed in order to simplify the upgrades and reduce the impact (downtime) for users. Now, with the automated build and clear versioning, the Cosmic system VMs can be upgrade at any time, at any pace.

In Cosmic, there are several `global settings` to tweak when working with system VM templates:
- `minreq.sysvmtemplate.version` this is the minimum version virtual routers should report for the management server to be able to work with. When you set it to `16.4.1`, anything newer will be accepted (`16.4.3`, `16.5.12`, `16.7.1`, etc) and older versions are rejected (`4.6.0` (legacy versioning), `16.3.22`, `16.2.1`, etc). Routers that are not up-o-date will display a `Requires Upgrade` flag.
- `router.version.check` Should the version check be undesireable, then you can turn it off by setting this to `false`. It is `true` by default.
- `router.template.xenserver` and `router.template.kvm`. These point to the name of the template that should be used for new system VMs. For example `cosmic-systemvm-16.4.3`.

## Router with a Cosmic System VM
![image](https://cloud.githubusercontent.com/assets/1630096/14233812/06d8512a-f9d3-11e5-93bb-dff8cb490d07.png)

## Compatibility
The system VMs generated by this build are compabible with:
- Any Cosmic Cloud version
- Apache CloudStack `4.6`, `4.7` and `4.8`
- Possibly also with older Apache CloudStack versions but that has to be tested.

Compared to the stock Apache CloudStack system VMs, these are the changes:
- Larger disk with less partitions (so you can manually install packages or updates should you wish)
- Versioning, as described above
- Works in separate repository. Therefore it does not include `systemvm`-scripts, as these will be copied from the `systemvm.iso` at time of use anyway.

## Authors
- Boris Schrijver
- Remi Bergsma

repository: MissionCriticalCloud/systemvm-packer

repo_name: MissionCriticalCloud/systemvm-packer


text:
Unreleased Changes
------------------

1.25.0 (2023-07-11)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.24.0 (2023-07-06)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.23.0 (2023-06-28)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.22.0 (2023-06-15)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.21.0 (2023-06-07)
------------------

* Feature - AWS IoT Core Device Advisor now supports new Qualification Suite test case list. With this update, customers can more easily create new qualification test suite with an empty rootGroup input.

1.20.0 (2023-05-31)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.19.0 (2023-04-27)
------------------

* Feature - AWS IoT Core Device Advisor now supports MQTT over WebSocket. With this update, customers can run all three test suites of AWS IoT Core Device Advisor - qualification, custom, and long duration tests - using Signature Version 4 for MQTT over WebSocket.

1.18.0 (2023-01-18)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

* Issue - Replace runtime endpoint resolution approach with generated ruby code.

1.17.0 (2022-12-22)
------------------

* Feature - This release adds the following new features: 1) Documentation updates for IoT Device Advisor APIs. 2) Updated required request parameters for IoT Device Advisor APIs. 3) Added new service feature: ability to provide the test endpoint when customer executing the StartSuiteRun API.

1.16.0 (2022-10-25)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.15.0 (2022-07-22)
------------------

* Feature - Added new service feature (Early access only) - Long Duration Test, where customers can test the IoT device to observe how it behaves when the device is in operation for longer period.

1.14.0 (2022-02-24)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.13.0 (2022-02-03)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.12.0 (2021-12-21)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.11.0 (2021-11-30)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.10.0 (2021-11-26)
------------------

* Feature - Documentation update for Device Advisor GetEndpoint API

1.9.0 (2021-11-23)
------------------

* Feature - This release introduces a new feature for Device Advisor: ability to execute multiple test suites in parallel for given customer account. You can use GetEndpoint API to get the device-level test endpoint and call StartSuiteRun with "parallelRun=true" to run suites in parallel.

1.8.0 (2021-11-04)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.7.0 (2021-10-18)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.6.0 (2021-09-01)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.5.0 (2021-07-30)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.4.0 (2021-07-28)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.3.0 (2021-05-17)
------------------

* Feature - AWS IoT Core Device Advisor is fully managed test capability for IoT devices. Device manufacturers can use Device Advisor to test their IoT devices for reliable and secure connectivity with AWS IoT.

1.2.0 (2021-03-10)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.1.0 (2021-02-02)
------------------

* Feature - Code Generated Changes, see `./build_tools` or `aws-sdk-core`'s CHANGELOG.md for details.

1.0.0 (2020-12-15)
------------------

* Feature - Initial release of `aws-sdk-iotdeviceadvisor`.

repository: aws/aws-sdk-ruby

gha_language: Ruby

repo_name: aws/aws-sdk-ruby


text:
# Subscribo project

Contains packages and other files for building Subscribo API backend as well as Subscribo Frontend servers

## Outline

 * A.1 [Frontend server installation](#a-frontend)
 * B.1.i [Backend server installation on Homestead](#b1i-installation-for-development-using-homestead-box-on-vagrant)
 * B.1.ii [Backend server installation on web server](#b1ii-installing-and-configuring-for-staging-or-production-using-web-server)
 * C.1 [Local Satis server configuration](#c-satis)

## A. Frontend

### A.1. Installation

You need to decide following:

 * where you want to put your frontend project: `/path/to/your/frontend/project/` = `path/to/your/project/parent/your_frontend_project_subdirectory_name`
 * host name of your frontend: `frontend.hostname`

##### A.1.1 Setup and/or configure your Web Server, Virtual Server or [Homestead box](http://laravel.com/docs/5.1/homestead)

Notes:
 * You do not need DB for frontend.
 * If you already have had Vagrant box configured and updated its configuration, you might need to run `vagrant reload --provision` to let vagrant box find your new sites
 * Add new record with `frontend.hostname` to your `/etc/hosts` if needed (you might find IP address needed for new record in `path/to/your/homestead/configuration/Homestead.yaml` under key `ip`)

##### A.1.2 [Install](http://laravel.com/docs/5.1/installation) Laravel 5.1

In order to install into 'frontend' directory you may use this composer command
(provided you have [composer](http://getcomposer.org) installed and current Laravel version is 5.1):

```sh
    composer create-project laravel/laravel --prefer-dist your_frontend_project_subdirectory_name
```

##### A.1.3 [Install and configure](/vendor/subscribo/apiclient/README.md) package Subscribo ApiClient

##### A.1.4 For development you can optionally [install](/vendor/subscribo/clientchecker/README.md) package Subscribo ClientChecker

##### A.1.5 Set environment variables

In development you may use .env.frontend file generated during
[Backend Installation](#b1i-installation-for-development-using-homestead-box-on-vagrant)
for setting up environment variables:

```sh
    $ cp /path/to/your/backend/project/.env.frontend /path/to/your/frontend/project/.env
    $ vi /path/to/your/frontend/project/.env # Modify as needed (see below)
```

Only following environment keys are needed for frontend (you may delete the rest):

```sh
    APP_ENV=local
    APP_DEBUG=true
    APP_KEY=SomeRandomString32CharactersLong # you may reset this via php artisan key:generate

    SUBSCRIBO_REST_CLIENT_PROTOCOL=http
    SUBSCRIBO_REST_CLIENT_HOST=frontend.hostname
    SUBSCRIBO_REST_CLIENT_TOKEN_RING=simple_some_long_hash

    CACHE_DRIVER=file
    SESSION_DRIVER=file
    QUEUE_DRIVER=sync
```

Frontend server does not use database, so database setting are not needed.

It takes needed information from backend, for which it needs to have set connection correctly:
`SUBSCRIBO_REST_CLIENT_PROTOCOL`, `SUBSCRIBO_REST_CLIENT_HOST` and especially `SUBSCRIBO_REST_CLIENT_TOKEN_RING`.

####### Finding out your Token ring

If `SUBSCRIBO_REST_CLIENT_TOKEN_RING` is not set to string starting with 'simple_'
or you are getting `Internal Server Error` when trying to access any frontend page communicating with backend
and log connected to that particular error is having something like 'Unauthorized' or 'TokenConfigurationException'
you need to set this value properly.

You might find the proper token ring in Backend server database,
table `user_tokens`, field `token_ring`.
Be sure you select correct row, i.e. row having type `SubscriboDigest`
connected to correct user - i.e. user having type `server` and connected to your service.

(First find ID of your service in `services` table - check that `url` of your service agrees with `frontend.hostname`,
then find ID of user of type `server` connected to your service ID,
finally find appropriate user token in table `user_tokens` having type SubscriboDigest and connected to your user,
and copy over token_ring to `.env` file.)

You may also use following sql (modify its end for service with different identifier):

```sql
    SELECT `token_ring` FROM `user_tokens` JOIN `users` ON `user_tokens`.`user_id` = `users`.`id` JOIN `services` ON `users`.`service_id` = `services`.`id` WHERE `user_tokens`.`type` = "SubscriboDigest" AND `users`.`type` = "server" AND `services`.`identifier` = "FRONTEND"
```

## B. Backend

### B.1. Installation

#### B.1.i Installation for development using [Homestead box](http://laravel.com/docs/5.1/homestead) on Vagrant

You need to decide following:

 * where you want to put your project: `path/to/your/project` = `path/to/your/project/parent/your_project_subdirectory_name`
 * where you want to put your Homestead configuration: `path/to/your/homestead/configuration`
 * host name of your project: `backend.hostname`

Optionally:
 * Do you want to also make additional frontend?
 * If so, host name of additional frontend: `frontend.hostname`

##### B.1.i.1 Change to directory, which should be parent directory of your project

```sh
    $ cd path/to/your/project/parent
```

##### B.1.i.2 Clone the git project into a new (nonexistent) or empty subdirectory

```sh
    $ git clone https://github.com/Subscribo/Subscribo your_project_subdirectory_name
```

##### B.1.i.3 Create `.env` file using `.env.example` as a template

```sh
    $ cd path/to/your/project/
    $ cp .env.example .env
    $ vi .env                        # modify as needed
```

Notes:
* Setup DB access details, if you have changed them in your vagrant box or created a special DB for this project
* Do not forget to setup 'SUBSCRIBO_REST_CLIENT_HOST' to hostname accessible from host
  (this is actually the host name of your backend server - `backend.hostname`;
   you need to put this also under key `sites:` in your `Homestead.yaml`)

##### B.1.i.4 Install [Vagrant](https://www.vagrantup.com) and [Homestead](http://laravel.com/docs/5.1/homestead)

##### B.1.i.5 Configure and run your Homestead box (and modify your `/etc/hosts` if needed)

```sh
    $ cd path/to/your/homestead/configuration
    $ vi Homestead.yaml
    $ vagrant up
    $ sudo vi /etc/hosts
```

##### B.1.i.6 Run `install_backend.sh` from within your Homestead box

```sh
    $ cd path/to/your/homestead/configuration
    $ vagrant ssh
    vagrant@homestead:$ cd path/where/your/project/is/mapped
    vagrant@homestead:$ source bin/install_backend.sh test
```

Note: instead of running `install_backend.sh` via `source` command, you may run it as a script,
(which has an advantage on stopping on first error).
To do so, run these commands **instead** of last line in previous script:

```sh
    vagrant@homestead:$ chmod +x bin/install_backend.sh
    vagrant@homestead:$ bin/install_backend.sh test
```

##### B.1.i.7 Running artisan commands from terminal running on host machine

When using Homestead box and have compatible php installed on your host machine,
you may also run some of artisan command directly from terminal of your host machine (i.e. not via `vagrant ssh`)
To be able to run also database-related commands (such as `php artisan migrate:refresh`)
you need to set up environment first.
You may do so by creating and modifying file `.env.commandline` and setting up respective environment variable.

To do once:

```sh
    $ cd path/to/your/project/
    $ cp .env .env.commandline
    $ vi .env.commandline            # modify as needed (see below)
```

You need to modify following `.env.commandline` keys (see Connecting to databases in
[Laravel Homestead docs](http://laravel.com/docs/5.1/homestead#daily-usage)

```sh
APP_ENV=commandline
DB_HOST=<IP_ADDRESS>
DB_PORT=33060
```

Note: make sure, that whenever you change important settings in `.env` file (such as `SUBSCRIBO_COMMON_SECRET`)
     you need to change it in `.env.commandline` as well

Now, whenever you open new terminal window on your host machine and plan to run artisan commands
related to DB operations, run first following:
```sh
    $ SUBSCRIBO_ENV=commandline
    $ export SUBSCRIBO_ENV
```

Notes:

 * if you want to run DB related artisan commands from your IDE, you also might need to set environment variable
   'SUBSCRIBO_ENV' to value 'commandline'
 * usual error which is displayed, when you did not so, and meaning there is a problem with a connection to your DB, is:
```
    [PDOException]
    SQLSTATE[HY00] [2002] No such file or directory
```

#### B.1.ii Installing and configuring for staging or production using web server

##### B.1.ii.1 Install and setup Web server (and optionally also database, queue server, mail server, etc.)

##### B.1.ii.2 Set up [environment variables](/.env.example) in a way appropriate for that service

* Setup DB access, Mail driver and access etc.
* Do not forget to setup 'SUBSCRIBO_REST_CLIENT_HOST' to hostname accessible from host

##### B.1.ii.3 Login to your Web server via ssh

##### B.1.ii.4 Clone the git project into a new (nonexistent) or empty subdirectory

###### B.1.ii.4.a If your project directory does not exist yet:

```sh
    $ cd path/to/your/project/parent
    $ git clone https://github.com/Subscribo/Subscribo your_project_subdirectory_name
```

###### B.1.ii.4.b Alternatively, if your project directory does already exist:

```sh
    $ cd path/to/your/project/
    $ ls -A                                               # Ensure, that the directory is empty (should display nothing)
    $ git clone https://github.com/Subscribo/Subscribo .  # Note the trailing dot
```

##### B.1.ii.5 Change directory to your project directory:

```sh
    $ cd path/to/your/project/
```

##### B.1.ii.6 Modify and run `install_backend.sh`

```sh
    $ vi bin/install_backend.sh         # Modify as needed (e.g. remove things you do not want script would do)
    $ chmod +x bin/install_backend.sh   # Make script executable
    $ bin/install_backend.sh test       # Run it
```

## C. Satis

Running 'composer update' would not work, if packages resource is not configured, as there are private packages used.
For development you may configure local packages resource using [Satis](https://github.com/composer/satis)

### C.1 Satis setup and configuration

##### C.1.1 [Install composer globally](https://getcomposer.org/doc/00-intro.md#globally)
(or modify 'bin/configure_satis.sh' )

##### C.1.2. Installing Satis using provided script 'bin/configure_satis.sh'

```sh
    $ /path/to/Subscribo/bin/configure_satis.sh
```

Notes:
 * This script is not suitable for refreshing satis configuration, only for first-time install
 * It might be faster and easier to run this script from your host terminal (as opposed to `vagrant ssh`)
 * If you want to run this script via `vagrant ssh` you need to make sure,
   that directory for `satis` exists prior to running a script or that script is able to create such directory
   (this is true also for directory for `packages` if it is not part of your backend project)

##### C.1.3. Configure your vagrant box / virtual server to serve Satis public directory and update your 'etc/hosts' file

**Important:** You might need to run vagrant 'reload --provision' to let vagrant box find your new sites

##### C.1.4. Add to your project's 'composer.json' file or create '~/.composer/config.json' with this content:

```json
    {
        "repositories": [
            {
                "type": "composer",
                "url": "http://satis.url.you.provided.to.script"
            }
        ]
    }
```

Notes:
 * `configure_satis.sh` script provides similar file for you in `bin/files/composer`
   directory and provides you with a hint how to copy it over your previous configuration (if any).
   It is recommended that you first check the content of your current configuration before you overwrite it.
 * If you intend to use `composer update` etc., both from your host terminal as well as from `vagrant ssh`,
   then you need to put this file into `~/.composer` directory of your user
   on both vagrant machine as well as on host machine

### C.2 Satis update

Usually you may use script generated during installing Satis for updating Satis with current content
of your project's `vendor/subscribo` directory.

```sh
    $ /path/to/Subscribo/bin/update_satis.sh
```

Notes:
 * Hook to `update_satis.sh` has been added as pre-install and pre-update script,
   because if your would running `composer update` or `composer install` without your Local Satis server been up-to-date,
   you might overwrite your (recent) changes.
 * When running `update_satis.sh` subdirectories of `packages` directory is cleaned from previous content, but `.git`
   subdirectory is not deleted. This is true for all files and directories starting with dot. If you rename / remove any
   file / directory in some package root starting with dot (e.g. `.gitignore`) you need to replicate your change
   in corresponding copy in `packages` directory manually.

### C.3 Usage

When your Satis server is running, you can run:

```sh
    $ cd /path/to/Subscribo
    $ composer update
```

## General notes:

 * These scripts are made ad-hoc. If you experience problems, you might need to do things manually.
   Studying provided scripts might give you some guidance.

repository: Subscribo/Subscribo

repo_name: Subscribo/Subscribo


text:
ZSH plugin for wakatime
=======================

Automatic time tracking for commands in ZSH using [wakatime](http://wakatime.com/).

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

It depends on [zsh](http://www.zsh.org/) **6.0 or higher**.

Also make sure you have configured wakatime API key in your [~/.wakatime.cfg](https://github.com/wakatime/wakatime#configuring) file.

1. `pip install wakatime` to install wakatime CLI, with **6.0 or higher**. Check wakatime CLI version by `wakatime --version`. See more [here](https://github.com/wakatime/wakatime) for wakatime CLI.

2. For oh-my-zsh user:
  - `cd ~/.oh-my-zsh/custom/plugins && git clone https://github.com/wbinglee/zsh-wakatime.git`

  - Edit your `.zshrc` file and add `zsh-wakatime` to oh-my-zsh plugins

3. For Antigen user:
  - `antigen bundle wbinglee/zsh-wakatime`

4. Open a new terminal and type commands

5. Visit https://wakatime.com/project/Terminal

Screen Shot
------------

![waketime-zsh](https://www.evernote.com/shard/s46/sh/47996872-d054-4c52-843e-2fe17a3d7f90/32032a685a2f8bfb/res/5b40b557-22d0-4520-a687-02d745ef08a2/skitch.png)

Configuration
-----------

WakaTime plugins share a common config file `.wakatime.cfg` located in your user home directory with [these options](https://github.com/wakatime/wakatime#configuring) available.

repository: rmorgans/zsh-wakatime

repo_name: rmorgans/zsh-wakatime


text:
# Test Collector Maven Plug-in

This project collects tests and uploads them to [CJAN.org](http://cjan.org).

## Building

In Eclipse, create a new execution with.

* Base directory:

`/home/kinow/Development/java/cjan/test-collector-maven-plugin/src/it/simple-it`

* Goal:

`-e -X clean test org.cjan:test-collector:0.4-SNAPSHOT:upload -Dcjan.reports=./target0/surefire-reports -Dcjan.url=http://localhost:8000/upload/results`

Set up your token in settings.xml, as explained in CJAN.org.

## Set up

The plug-in is deployed to Apache Maven central repository. Edit your settings.xml to
configure the user that will authenticate with CJAN.org.

```
<servers>
  <server>
    <id>cjan</id>
    <username>$TOKEN</username>
  </server>
</servers>
```

## Usage

First generate test reports.

`mvn clean test`

Now you can upload your results to CJAN.org with the following command line:

`mvn org.cjan:test-collector:upload`

Other options that can be passed when using the plug-in include (with the default value):

* -Dcjan.reports=./target/surefire-reports
* -Dcjan.url=http://cjan.org/upload/results
* -Dcjan.proxy.host=
* -Dcjan.proxy.port=

## License

MIT License

repository: CjanOrg/test-collector-maven-plugin

repo_name: CjanOrg/test-collector-maven-plugin


text:
---
layout: default
name: "Widgets"
---

We've built a [flexible widget framework](https://github.com/kumu/widgets) to make it easy to embed your favorite content within Kumu. Widgets are curently supported for:

* Vimeo ```[[vimeo/:id]]```
* YouTube ```[[youtube/:id]]```
* Slideshare ```[[slideshare/:id]]```
* Speaker Deck ```[[speakerdeck/:id]]```

## The Widgets

### Vimeo

Use the code below to embed a Vimeo video in the profile. Simply swap the ID for the ID of the video you'd like to include and add a descriptive title (optional).

```
[[vimeo/36519586 "a story for tomorrow by gnarly bay"]]
```

![gnarly bay](/images/embed-me.png)

### YouTube

You can find the ID for a given YouTube video within the URL of the video. Just grab the portion after the ```?v=``` part of the URL.

```
[[youtube/mXiFqI-mekw]]
```

![youtube](/images/youtube-widget.png)

### Slideshare

We've added pre-built aspect ratios to deliver content with the right height and width. Add ```?aspect=hd``` to embed the content with an HD aspect ratio.

```
[[slideshare/32200030?aspect=hd "Changing behavior through persuasive design"]]
```

![slideshare](/images/slideshare-widget.png)

### Speaker Deck

Or rely on our standard defaults by not including anything (we've worked hard to make sure they are right for the majority of things you'll embed from a given platform).
```
[[speakerdeck/39d28e80a7840130b36006a0b9603b35 "The product is the byproduct"]]
```

![speakerdeck](/images/speakerdeck-widget.png)

## Aspect Ratios and Other Settings

Each widget has a default aspect ratio as listed below:

* Vimeo [hd]
* YouTube [hd]
* Slideshare [sd]
* Speaker Deck [sd]

Add ```?aspect=hd``` or ```?aspect=sd``` after the ID for any widget to change from the default.

## What other widgets do you need? <a<EMAIL_ADDRESS>us!</a>

repository: kumu/help

gha_language: CSS

repo_name: kumu/help


text:
# TIP WLAN Cloud Portal

## Set up environment:

Install Dependencies:
`npm install`

You will get an error installing the package [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library) because it is in a private npm registry.
You can either install the package with the commands below or clone the repo [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library) and skip to the section Set up Full Development.

Run

```
npm login --registry=https://tip.jfrog.io/artifactory/api/npm/tip-wlan-cloud-npm-repo/
```

And enter the supplied credentials. Ask @sean-macfarlane for credentials if you don't have.

Install package:

```
npm i --registry=https://tip.jfrog.io/artifactory/api/npm/tip-wlan-cloud-npm-repo/ @tip-wlan/wlan-cloud-ui-library
```

### Set up Full Development

_Skip this section if you are not using a local [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library)_

Clone [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library) in parent folder

```
cd ..
git clone https://github.com/Telecominfraproject/wlan-cloud-ui-library.git
```

Link wlan-cloud-ui-library package locally for development:

```
cd wlan-cloud-ui
npm link ../wlan-cloud-ui-library
```

If `npm link` fails due to Permissions run with `sudo`

```
sudo npm link ../wlan-cloud-ui-library
```

To run Full Development you must clone [wlan-cloud-graphql-gw](https://github.com/Telecominfraproject/wlan-cloud-graphql-gw), follow it's README, and run it. Or you use the live production build by setting the environment variable `API` to the GraphQL domain.

## Run:

### Bare Development

This is if you only want to run this repo locally, and want to use the live production builds of [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library) and [wlan-cloud-graphql-gw](https://github.com/Telecominfraproject/wlan-cloud-graphql-gw)

`npm run start:bare`

### Full Development

If you have cloned [wlan-cloud-ui-library](https://github.com/Telecominfraproject/wlan-cloud-ui-library) and [wlan-cloud-graphql-gw](https://github.com/Telecominfraproject/wlan-cloud-graphql-gw)

`npm start`

### Tests

`npm test`

### Production

`npm run build`

repository: AkshayJagadish/wlan-cloud-ui

repo_name: AkshayJagadish/wlan-cloud-ui


text:
---
hrs_structure:
  division: '1'
  volume: '1'
  title: '5'
  chapter: 39A
  section: 39A-235
type: hrs_section
tags:
  - Government
menu:
  hrs:
    identifier: HRS_0039A-0235
    parent: HRS0039A
    name: 39A-235 Exemption from taxation of department property
weight: 58640
title: Exemption from taxation of department property
full_title: 39A-235 Exemption from taxation of department property
---
**[§39A-235]** **Exemption from taxation of department property.** All revenues derived by the department from any project or under the project agreement pertaining thereto shall be exempt from all state, county, and municipal taxation. Any right, title, and interest of the department in any project shall also be exempt from all state, county, and municipal taxation. Except as otherwise provided by law, the interest of the project party or user of such project in a project or under the project agreement or related agreement shall not be exempt from taxation to a greater extent than it would be if the costs of the project were directly financed by the project party or other user. [L 1994, c 280, pt of §6]

repository: SamMade/BlueAndKrabby

repo_name: SamMade/BlueAndKrabby


text:
# Franchise Search

Run the project:

```bash
  yarn # install dependancies
  yarn start # run demo on http://localhost:8080
```

Build the JS:

```bash
  yarn build
```

repository: ActiveEvil/go-cruise-franchise-search

repo_name: ActiveEvil/go-cruise-franchise-search


text:
# Rocks and Minerals
~ 12 Days

## STANDARDS: Disciplinary Core Idea(s)
- HS-ESS1.C

##STANDARDS: Science and Engineering Practice(s)
- Using Mathematics and Computational Thinking

##STANDARDS: Cross-Cutting Concept(s)
- Flows, Cycles, and Conservation
- Structure and Function

##STANDARDS: College and Career Readiness Standard(s)
- Review:
-- ID 402
- Focus
-- ID 504
-- ID 506
- Challenge
-- ID 602

##ESSSENTIAL TOPICS / LEARNING OUTCOMES
- Mineral Properties
- Rock Cycle
- Types of Rocks
- Testing Mineral Properties
- Interpret rock cycle and associated processes
- Determine what types of rocks would form in specific conditions
- Analyzing rock samples
- Classify rocks by type

##SUGGESTED LESSONS / ACTIVITIES / ASSESSMENTS / RESOURCES
- Mineral Properties Videos
- Mineral Properties Lab
- Crystal Growing Lab
- Rock Cycle Lab
- Rock ID Labs
- Mining Lab (Engineering)
- Field Trip: Quarry Visit
- Another idea

path: /Semester-1-Geology-and-Oceanography/Unit 2 Rocks and Minerals.md

filename: Unit 2 Rocks and Minerals.md


text:
# Change Log
All notable changes to this project be documented in this file. This project tries to adhere to a [semantic versioning](https://semver.org/) scheme.

## [MAJOR.MINOR.PATCH] - TODAYS DATE
### Added

### Changed

### Fixed

### Removed

repository: ectvalenz/virtual-queue

repo_name: ectvalenz/virtual-queue


text:
# three-codegolf-shader

Load a [codegolf](https://codegolf.tk) as an animated shader material for three.js. Created by cantelope and notchris.

[View Demo](https://notchris.net/codegolf/)

## Run demo

```bash
npm install
```
```bash
npm run start
```
## Usage

TBD

## License
[MIT](https://choosealicense.com/licenses/mit/)

repository: notchris/three-codegolf-shader

repo_name: notchris/three-codegolf-shader


text:
# plot_small_HZ_planets
Plots of small HZ planets and how their parameters have changed with new data

This repository compares DR25 planet parameters for 30 small confirmed planets with updated planet parameters from Gaia and E. Mamajek.

contents:
  Data directory --> contains .csv files of the planet parameters
  Rmd directory --> contains the Rmarkdown file with the code to read in the data, reorganize it, and make plots
  Plots directory --> contains the resulting plots

Downloading the entire directory structure and opening the .Rproj file in Rstudio should allow running the code easily.
(all the required packages are called for in the first code block.  you will need to download and install these separately.  the Rstudio package manager makes it really easy though...)


text:
# Sample memory dumps

This directory contains sample memory dumps of the relevant memory region
of [whoopsie](https://launchpad.net/ubuntu/+source/whoopsie)
during the PoC described in
[README_CVE-2019-15790](../README_CVE-2019-15790.md).
As I mention in "Explanatory Notes" section, I have found that the offset of
the magazine chunk is consistently `0x6f40` when I am in the office and `0x7040`
when I am at home (same laptop, different locations).
So the files in this directory are named "home" and "work" to show this pattern.

repository: github/securitylab

gha_language: C

repo_name: github/securitylab


text:
Change Log
==========

Version 0.5.2 *(2019-11-22)*
----------------------------

 * Fix: Properly honor target `-source` version when generating the `@Generated` annotation on sources.

Version 0.5.1 *(2019-10-28)*
----------------------------

 * New: Support incremental annotation proessing in inflation inject (previously it was only supported
   by assisted inject).
 * Fix: Change annotations to class retention to actually allow incremental annotation processing
   to work.

Version 0.5.0 *(2019-08-08)*
----------------------------

 * New: Support incremental annotation processing.
 * Fix: Explicitly sort generated module bindings to ensure stable output and avoid recompilation.
 * Fix: Support nested `@AssistedModule` and `@InflationModule` classes.

Version 0.4.0 *(2019-04-05)*
----------------------------

 * New: Other annotation processors using this tool as a library can now specify factory superinterfaces
   with any type, not just a class.
 * Fix: Allow duplicates for provided dependencies. Dagger does not prohibit this so neither should this tool.

Version 0.3.3 *(2019-03-07)*
----------------------------

 * Fix: Support `@AssistedModule`s which are generated by other annotation processors.

Version 0.3.2 *(2018-11-27)*
----------------------------

 * Relax the message for when zero assisted parameters or zero provided parameters were used from being
   an error to a warning. While assisted injection isn't needed in either of those cases, nothing actually
   prevent it from still working.

Version 0.3.1 *(2018-11-19)*
----------------------------

 * Fix: Honor abstract factory methods which come from supertypes.
 * Fix: Support generic use in factory parameters and return type.

Version 0.3.0 *(2018-10-16)*
----------------------------

 * New: Allow multiple assisted parameters of the same type. This also brings validation that all
   parameter names in the factory match those of the constructor. Without this, there is no way to
   correctly match arguments when multiple of the same type are present.
 * New: Validate that modules annotated with `@AssistedModule` or `@InflationModule` actually include
   the generated module in their `includes=` list.
 * New: Include a `@Generated` annotation which is appropriate for the target JDK on all generated code.
 * Fix: Mark invalid usages of `@Assisted` at compile time:
   * Cannot be used on a non-constructor parameter.
   * Cannot be used on a constructor without `@AssistedInject` or `@InflationInject`.
   * Cannot be used on a constructor which is annotated with `@Inject`.
 * Fix: Inflation injection now validates that targets are subtypes of View rather than generating
   code which fails to compile.
 * Fix: Support injection of primitives by boxing them when generating a `Provider<..>` type.
 * Fix: Generate correct code for types which are nested inside others.

Version 0.2.1 *(2018-09-04)*
----------------------------

* Fix: Ensure the generated Dagger 2 module is public if the user-defined module is public.

Version 0.2.0 *(2018-08-20)*
----------------------------

 * New: Android view-inflation injection! Inject dependencies into your custom views as constructor
   parameters while still allowing inflation from XML.
 * Fix: Factory parameter order is no longer required to match constructor parameter order.
 * Fix: Requesting a `Provider<T>` injection now works correctly.
 * Fix: Duplicate assisted or provided dependencies now issue a compiler error.
 * Fix: Validate visibility of the type, constructor, and factory prior to generating the factory.
   This produces a better error message instead of generating code that will fail to compile.

Version 0.1.2 *(2017-07-19)*
----------------------------

 * Fix: Support creating parameterized types.

Version 0.1.1 *(2017-07-03)*
----------------------------

 * Fix: Ensure annotation processors are registered as such in the jar.

Version 0.1.0 *(2017-07-02)*
----------------------------

Initial preview release.

repository: khyveasna/AssistedInject

repo_name: khyveasna/AssistedInject


text:
cpe_softwareupdate Cookbook
========================
Install a profile to manage softwareupdate settings.

Attributes
----------
* node['cpe_softwareupdate']
* node['cpe_softwareupdate']['AllowPreReleaseInstallation']
* node['cpe_softwareupdate']['CatalogURL']

Usage
-----
The profile will manage the `com.apple.SoftwareUpdate` preference domain.

The profile's organization key defaults to `Pinterest` unless `node['organization']` is
configured in your company's custom init recipe. The profile will also use
whichever prefix is set in node['cpe_profiles']['prefix'], which defaults to `com.facebook.chef`

The profile delivers a payload for the above keys in `node['cpe_softwareupdate']`.  The three provided have a sane default, which can be overridden in another recipe if desired.

For example, you could tweak the above values
    # Allow beta access
    node.default['cpe_softwareupdate']['AllowPreReleaseInstallation'] = true
    # Use internal SUS
    node.default['cpe_softwareupdate']['CatalogURL'] = 'https://sus.domain.tld'

repository: charlesmisson/it-cpe-cookbooks

repo_name: charlesmisson/it-cpe-cookbooks


text:
# spedye: A reverse proxy for the HTTPS and SPDY protocols

Spedye is meant to handle all TLS/SSL traffic for a website -- it is based upon the ideas in [Bump's Stud](https://github.com/bumptech/stud), but extended to include converting SPDY connections into normal HTTP requests.

Spedye aims to make adopting the SPDY protocol extremely easy for all kinds of websites.

# STATUS: incomplete, prototype, work in progress, non-functional, etc, etc

## Goals / Features

* Built on top of [spdylay](https://github.com/tatsuhiro-t/spdylay).
* SPDY version 2 and version 3
* Multiple threads or processes each running their own libuv event loop to parallelize cryptographic operations across CPUs.
* Server Name Indication: Support for multiple Certificates on a single listening address.

## Usage

The simplest configuration is to forward all traffic on port `:443` to port `:80`:

    spedye -b <IP_ADDRESS>:80 -f <IP_ADDRESS>:443 -c /etc/ssl/mycert.crt -k /etc/ssl/mycert.key

Spedye by default adds the following headers to the backend HTTP request:

* `X-Forwarded-For`: Client IPv4 or IPv6 address.
* `X-Forwarded-Proto`: Client protocol, always `https`
* `X-Forwarded-Spdy`: `true` or `false` if SPDY was used.
* `X-Forwarded-Host`: Set to the Common Name (CN) of the certificate used.

Spedye also supports using a configuration file for all options.

## License

Apache License 2.0, see the `LICENSE` file for details.

repository: zgbkny/spedye

repo_name: zgbkny/spedye


text:
[![](images/logo.png)](https://bloxroute.com)

# bloXroute Gateway
The bloXroute Gateway is a blockchain client that attaches to blockchain nodes and acts as an entrypoint to bloXroute's BDN.
## What is bloXroute?

bloXroute is a blockchain scalability solution that allows all cryptocurrencies and blockchains to scale to
thousands of transactions per second (TPS) on-chain, without any protocol changes.

bloXroute solves the scalability bottleneck by addressing the substantial time required for all nodes to synchronize
when handling large volumes of TPS. Most importantly, bloXroute does this in a provably neutral way.

For more information, you can read our [white paper].

## Quick start

You can choose either to either install via [pip] or [Docker] (recommended). Refer to
[our technical documentation][install] for full usage instructions.

## Development

Ensure you have Python 3.6+ installed. Again, we recommend that you use a `virtualenv` for `bxgateway` development.

Clone the `bxcommon` repo, which contains abstract interfaces for the gateway node's event loop, connection management,
and message classes that are shared with other bloXroute nodes.

```bash
git clone https://github.com/bloXroute-Labs/bxcommon.git
```

Make sure `bxcommon/src` is in your `PYTHONPATH` and export some environment variables (you can also add this to your
`~/.bash_profile`, or however you prefer to manage your environment).

```bash
export PYTHONPATH=$PYTHONPATH:$(pwd)/bxcommon/src
export<EMAIL_ADDRESS># for OpenSSL dependencies
```

Install dependencies:

```bash
pip install -r bxcommon/requirements.txt
pip install -r bxcommon/requirements-dev.txt
pip install -r bxgateway/requirements.txt
pip install -r bxgateway/requirements-dev.txt
```

Run unit and integration tests:

```bash
cd bxgateway/test
python -m unittest discover
```

Run `bxgateway` from source:

```bash
cd bxgateway/src/bxgateway
python main.py --blockchain-network [blockchain-network] --blockchain-protocol [blockchain-protocol]
```

### Extensions
`bxgateway` has references to C++ extensions for faster performance on CPU intensive operations. To make use of this,
clone the `bxextensions` repository, build the source files, and add the entire `bxextensions` folder to your
`PYTHONPATH`.

```bash
git clone --recursive https://github.com/bloXroute-Labs/bxextensions.git
```

Refer to [bxextensions] for information on building the C++ extensions.

## Documentation

You can find our full technical documentation and architecture [on our website][documentation].

## Troubleshooting

Contact us at<EMAIL_ADDRESS>for further questions.

[white paper]: https://bloxroute.com/wp-content/uploads/2019/01/whitepaper-V1.1-1.pdf
[pip]: https://pypi.org/project/pip/
[docker]: https://www.docker.com
[bxextensions]: https://github.com/bloXroute-Labs/bxextensions
[virtual environment]: https://virtualenv.pypa.io/en/latest/
[install]: https://docs.bloxroute.com/gateway
[documentation]: https://docs.bloxroute.com/

repository: bloXroute-Labs/bxgateway

gha_language: Python

repo_name: bloXroute-Labs/bxgateway


text:
# raytracer
### An experimental raytracer written in Python(3)

I created this raytracer on a weekend because I just saw someone talking about raytracing. That got me interested.

Big thanks to [Arun Ravindran](https://www.youtube.com/channel/UCj7bqdW_FLpzUIzlSbXLp_A) and [James Bowman](https://github.com/jamesbowman) for demonstrating formulas and vector/ray maths.

![alt text](https://i.imgur.com/MWXSCeo.png "The example model included in the Repository")

The usage is pretty simple...
`python3 raytrace.py [name of model file]`
the contents of the model.json are pretty straight forward:
Project: the name of the output file
fileformat: (not required) if fileformat is not specified, it's defaulting to ppm. Any other fileformats than ppm require the Pillow library

resolution: output resolution / antialiasing (AA only works with Pillow installed)
objects: contains all objects in the scene, it's type, the coordinates and specific information like sphere-radius. dX/Y/Z coords for the Plane set the rotation of the plane. Also, the Planes color can be a list if the effect planestyle-chess is used.

then there are only camera and light left, camera being the point the viewer is looking from and light the source of light

example_models includes some extra models:

![alt text](https://i.imgur.com/nhujUx0.png "chessuniverse.json")

repository: fietensen/raytracer

repo_name: fietensen/raytracer


text:
---
layout: project
type: project
image: images/airbnb-3384008_960_720%5B1%5D.png
title: AirBnb Scrapper
permalink: projects/airbnb
# All dates must be YYYY-MM-DD format!
date: 2015-07-01
labels:
  - AirBnb
  - JavaScript
  - Browser Extension
summary: As a part of an AI project, the scrapper collected rental estate features such as m2, location, daily rate, rating and more from AirBnb.
---

Our client is building an AI model with the data scrapped from AirBnb site. The purpose of this application is to assess a real estate listing rate. The price is not static and there is an unknown and known seasonality affect which helps real-time analysis.

The project has many obstacles needed to be bypassed since there is no open AirBnb Api. JavaScript is the choosen language to bypass those obstacles by leveraging browser power.

Here is some code that illustrates how we read values from the line sensors:

You can learn more about the project by enquiring us.

repository: scrapmanio/scrapmanio

repo_name: scrapmanio/scrapmanio


text:
---
date: "2016-04-20T20:47:27Z"
title: "DNVM clean up with update-self, uninstall and the like"
categories: ["Development Tools", "tools"]
tags: [".net core", "asp.net"]
excerpt: "This post is about upgrading and managing dnvm and runtimes installed on your<EMAIL_ADDRESS>---

This post is about upgrading and managing dnvm and runtimes installed on your machine.

## Short Story

```text
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "&{$Branch='dev';iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.ps1'))}"
```

first install of `dnvm`to get some `dnx`

```text
dnvm
```

lists the commands you can call with dnvm to manage your runtimes

```text
dnvm update-self
```

will update your version manager tool (dnvm itself,  not the runtimes)

```text
dnvm list
```

will list all installed runtimes

```text
dnvm uninstall  1.0.0-beta8 -arch x64 -r clr
```

unintsall a runtime version

```text
dnvm upgrade -r coreclr -arch x64
```

upgrades a version already installed

## Long Story

##### > which version is installed on your machine

Currently I have dnvm v1.0.0-beta5-10368 installed on my machine. to check this, just open a command prompt and type dnvm

[![dnvm-help](20-1.jpg?w=474)](20-1.jpg)

By the way, if nothing is installed on your machine, just type the following in a command prompt :

```text
@powershell -NoProfile -ExecutionPolicy unrestricted -Command "&{$Branch='dev';iex ((new-object net.webclient).DownloadString('https://raw.githubusercontent.com/aspnet/Home/dev/dnvminstall.ps1'))}"
```

you might want to check this also : [installing on windows](https://docs.asp.net/en/latest/getting-started/installing-on-windows.html)

##### > upgrade dnvm self

Now update dnvm version to the latest version:

```text
dnvm update-self
```

this results for me in version  v1.0.0-rc2-15546 which is the latest when writing this post

[![dnvm-update-self](20-2.jpg?w=474)](20-2.jpg)

##### > dnvm list, install, upgrade and uninstall

```text
dnvm list
```

will show all runtimes installed on your machine. you can uninstall them by issuing the following

```text
dnvm uninstall  1.0.0-beta5 -arch x64 -r coreclr
```

and that for each version installed in each arch and in each runtime

so I had to issue a long list of commands :

```text
...
C:\Temp>dnvm uninstall  1.0.0-beta8 -arch x86 -r coreclr
Removed 'C:\Users\a406775\.dnx\runtimes\dnx-coreclr-win-x<IP_ADDRESS>-beta8'

C:\Temp>dnvm uninstall  1.0.0-beta8 -arch x86 -r clr
Removed 'C:\Users\a406775\.dnx\runtimes\dnx-clr-win-x<IP_ADDRESS>-beta8'

C:\Temp>dnvm uninstall  1.0.0-beta8 -arch x64 -r clr
Removed 'C:\Users\a406775\.dnx\runtimes\dnx-clr-win-x<IP_ADDRESS>-beta8'
...

use dnvm upgrade to upgrade your dnx version to the latest:

```

dnvm upgrade -r coreclr -arch x64
```

if you have any issues, you canc check if there is a solution here : [known-issues](https://github.com/aspnet/Tooling/blob/master/known-issues.md)

repository: CedricDumont/blog

repo_name: CedricDumont/blog


text:
---
title_bar: Technical - Abstract Data Types
post_title: What are 'Abstract Data Types'?
post_subtitle: ...and why did I start writing them?
layout: default
---
Yesterday, while reading an old computer science textbook "Programming and Problem Solving with C++", I saw a chapter on "Abstract Data Types" (ADTs) and was instantly curious. So I read the chapter, hoping to learn about this strange and mysterious things. I was surprised to find out that ADTs are not strange and mysterious at all. In fact, I have been writing them in my programming career.

An ADT is any entity that contains data and specified behavior (methods/functions). For example, let us define a simple Bank Account ADT. This is a "specification" (a detailed list of what we want our ADT to do):

1. We should store how much money is in the account.
2. We can withdraw money from this account.
3. We can deposit money from this account.
4. We know how much money is in the account.

And here's an example of the Bank Account ADT, coded in Ruby...

  class BankAccount
    attr_reader :current_funds

    def initialize(amount)
      @current_funds = amount
    end

    def withdraw(amount)
      @current_funds -= amount
    end

    def deposit(amount)
      @current_funds += amount
    end
  end

That's it.

Now, you may not like how I wrote this ADT. Perhaps you prefer not using classes and may wish to use a more "functional" approach to programming. Or maybe you just want to write this ADT in a different language.

That's perfectly fine. Code the way that you wish. As long as you follow the specification listed above, the ADT is still valid. Your version of BankAccount is just as valid as mine. The implementation of an ADT is seperate from the specification of an ADT. That's why it is possible to refactor your code...so long as your code behaves the same way before and after the refactor.

Now, the mind-blowing part is that you can build ADTs...**using** ADTs. Suppose I want to create a Bank ADT that can store Bank Account ADTs, and I want to know how much money the Bank ADT has.

  class Bank

    def initialize(array_of_bank_accounts)
      @accounts = array_of_bank_accounts
    end

    def total_funds
      sum = 0
      @accounts.each do |account|
        sum += account.current_funds
      end
      sum
    end

  end

"Programming and Problem Solving with C++" recommends the use of ADTs because it makes programs simpler and easier to understand, thereby making code easier to write. The book uses an example of a car to illustrate its point:

>"With abstraction, we focus on the *what*, not the *how*. For example, our understanding of automobiles is largely based on abstraction. Most of us know *what* the engine does (it propels the car) but fewer of us know-or wnt to know-precisely *how* the engine works internally. Abstraction allows us to discuss, think about, and use automobiles without having to know everything about how they work.

And programming makes use of abstractions heavily, with some languages being entirely built on other languages. Ruby, for example, is built on C. Abstraction serves as a great way to manage complex code bases...and ADTs are the living paragons of abstraction.

But abstractions are 'leaky'. What if there is some bug in my BankAccount ADT? That bug would harm my Bank ADT as well...and could even harm any ADTs that were built on top of my Bank ADT.

So while ADTs are useful, you cannot be totally dependent on them. You have to be willing to look at the internal code of an ADT you're using and be able to debug it.

It is not enough to know how to program using abstractions. You must also know how to program the abstractions *themselves*.


text:
# TensorFlow JPEG to Tensor converter

This microservice takes a picture file and returns it as a TensorFlow tensor.

Some TensorFlow model accept JPEG as input, others do not. They expect a tensor as input.

Unfortunately, installing the Python `tensorflow` package wastes over 500 MB and slows down application startup. Therefore it's not that nice to "just install the tensorflow package" to convert a JPEG into a tensor to send it to TensorFlow Serving afterwards.

# Usage

## POST JPEG

```
curl -X POST -H "Content-Type: image/jpeg" --data-binary @1.jpg "http://localhost:5000/v1/pictures/?height=224&width=224"

{
  "tensor": [
    [
      [
        0.96875,
        0.96484375,
        0.98828125
      ],

        ...
        lots of stuff
        ...

      [
        1.0,
        1.0,
        1.0
      ]
    ]
  ]
}
```


text:
# Artifactory Registry

[![npm version](https://img.shields.io/npm/v/artifactory-registry.svg?style=flat)](npm-url)

> Tested only on MacOS.

CLI for set up [JFrog Artifactory](artifactory-url) with scope in NPM config.

[npm-url]:https://www.npmjs.com/package/artifactory-registry
[artifactory-url]:https://jfrog.com/artifactory/

## Usage

You don't need to install it. Instead you will use `npx`.

### `init`

Go to the root path of the project and initialize the tool:

```shell
$ npx artifactory-registry init
```

That command create `artifactory.json` file:

```json
{
  "scope": "my-scope",
  "host": "http://localhost:8081",
  "repositoryName": "my-project.npm.dev"
}
```

Configure `artifactory.json` using your JFrog Artifactory NPM configuration.

### `add`

Set the new configuration in NPM config. Require JFrog Artifactory authetication.

```shell
$ npx artifactory-registry add
```

Check the new NPM configuration:

```shell
$ cat ~/.npmrc
```

### `remove`

If you want to remove a NPM configuration:

```shell
$ npx artifactory-registry remove
```

This only remove the same data setted in `artifactory.json` file.

repository: renzocastro/artifactory-registry

repo_name: renzocastro/artifactory-registry


text:
# kubecolor completion for fish shell

## Install

```fish
$ mkdir -p ~/.config/fish/completions
$ cd ~/.config/fish
$ git clone https://github.com/awinecki/fish-kubecolor-completions
$ ln -s ../fish-kubecolor-completions/completions/kubecolor.fish completions/
```

### Install using [Fisher](https://github.com/jorgebucaran/fisher)

`fisher install awinecki/fish-kubecolor-completions`

## Building

This was tested using go 1.15.7 on macOS 11.1 "Big Sur".

```console
$ make build
```

## Environment Variables

### `FISH_KUBECOLOR_COMPLETION_TIMEOUT`

This is used to pass the `--request-timeout` flag to the `kubecolor` command.
It defaults to `5s`.

> Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h).
> A value of zero means don't timeout requests.

### `FISH_KUBECOLOR_COMPLETION_COMPLETE_CRDS`

This can be used to prevent completing CRDs. Some users may have limited access
to resources.
It defaults to `1`. To disable, set to anything other than `1`.

## Author

Forked by: Andrzej Winecki

Original credit goes to Evan Lucas (https://github.com/evanlucas/fish-kubectl-completions).

## License

MIT

repository: awinecki/fish-kubecolor-completions

repo_name: awinecki/fish-kubecolor-completions


text:
# blzr.bootstrap-select

This [Blazor](https://dotnet.microsoft.com/apps/aspnet/web-apps/blazor) bootstap select component is inspired by the js [bootstrap-select](https://github.com/snapappointments/bootstrap-select/), rewritten using C# as a Razor Component.

There is no dependency with JavaScript.

![Nuget](https://img.shields.io/nuget/v/blzr.bootstrapselect.svg)

[![Build, Test & Deploy](https://github.com/Rob-Newman/blzr.bootstrap-select/actions/workflows/build.yml/badge.svg)](https://github.com/Rob-Newman/blzr.bootstrap-select/actions/workflows/build.yml)

[![Build history](https://buildstats.info/github/chart/rob-newman/blzr.bootstrap-select?branch=main&includeBuildsFromPullRequest=false)](https://github.com/rob-newman/blzr.bootstrap-select/actions?query=branch%3Amain++)

<img alt="Screenshot of component in action" src="screenshot.gif" data-canonical-src="screenshot.gif" width="800" />

## Getting Setup

You can install the package via the NuGet package manager just search for *Blzr.BootstrapSelect*. You can also install via powershell using the following command.

```powershell
Install-Package Blzr.BootstrapSelect
```

Or via the dotnet CLI.

```bash
dotnet add package Blzr.BootstrapSelect
```

### 1. Register Services
You will need to register the Blzr.BootstrapSelect service in your application

#### Blazor WebAssembly
Add the following line to your applications `Program.Main` method.

```csharp
builder.Services.AddBootstrapSelect();
```

#### Blazor Server
Add the following line to your applications `Startup.ConfigureServices` method.

```csharp
services.AddBootstrapSelect();
```

### 2. Add Imports
Add the following to your *_Imports.razor*

```csharp
@using Blzr.BootstrapSelect
```

### 3. Add reference to style sheet(s)
Add the following line to the `head` tag of your `_Host.cshtml` (Blazor Server app) or `index.html` (Blazor WebAssembly).

We ship both minified and unminified CSS.

For minified use:

```HTML
<link href="_content/Blzr.BootstrapSelect/blzr-bootstrap-select.min.css" rel="stylesheet" />
```

For unminified use:
```HTML
<link href="_content/Blzr.BootstrapSelect/blzr-bootstrap-select.css" rel="stylesheet" />
```

Presumably, you already have bootstrap css referenced in your project. If not, use:
```HTML
<link rel="stylesheet"<EMAIL_ADDRESS>integrity="sha384-TX8t27EcRE3e/ihU7zmQxVncDAy5uIKz4rEkgIXeMed4M0jlfIDPvg6uqKI2xXr2" crossorigin="anonymous">
```

## Defaults
The following system wide defaults can be configured as part of the service registration

- `ShowSearch` (Default: `false`) - Determines if the search box should be displayed. When true, adds a search box to the top of the drop down (works in conjunction with `ShowSearchThreshold`)
- `ShowSearchThreshold` (Default: `0`) - The threshold to determine the number of options that must exists before the search box is displayed
- `SearchPlaceholderText` (Default: `"Search"`) - The placeholder text displayed in the search box
- `SearchNotFoundText` (Default: `"No matching results"`) - The text displayed if no options match a search term
- `DelayValueChangedCallUntilClose` (Default: `false`) - For multi's only, whether to delay calling ValueChanged until after the select is closed (default will fire after each option is selected/deselected)
- `SelectedTextFormat` (Default: `SelectedTextFormats.Values`) - Specifies how the selection is displayed with a multi select. `Values` displays a list of the selected options (separated by `MultiSeparator`). `Static` simply displays the select element's placeholder text. `Count` displays the total number of selected options.  `CountGreaterThan` behaves like `Values` until the number of selected options is greater than `SelectedTextFormatCount` where it then behaves like `Count`
- `SelectedTextFormatCount` (Default: `0`) - If `SelectedTextFormat` is `CountGreaterThan`, ths is the number of options that must be selected for the `Count` format to be applied
- `MultiSelectedText` (Default: `"{0} of {1} selected"`) - Specifies the text to display when the `SelectedTextFormat` is `count`. `{0}` is replaced with the number of selected items. `{1}` is replaced with the total number of options
- `MultiSeparator` (Default: `", "`) - The separator used for multi selected text when the format is `Values`
- `ShowPlaceholder` (Default: `false`) - For singles only, determines if the placeholder text should be displayed
- `MultiPlaceholderText` (Default: `"Nothing selected"`) - The text to display as the placeholder for multi's
- `SinglePlaceholderText` (Default: `"Select..."`) - The text to display as the placeholder for singles
- `ShowTick` (Default: `false`) - Whether to show the checkmark on singles
- `MaxSelectionsText` (Default: `"Limit reached ({0} items max)"`) - The text to display if the max number of selections is met. `{0}` is replaced with the `MaxSelections` parameter
- `SearchStyle` (Default: `SearchStyles.Contains`) - When set to `SearchStyles.Contains`, searching will reveal options that contain the searched text.  When set to `SearchStyles.StartsWith`, searching will reveal options that start with the searched text
- `ShowActions` (Default: `false`) - For multi's only. When set, adds two buttons to the top of the dropdown menu (Select All and Deselect All)
- `SelectAllText` (Default: `"Select All"`) - The text to display on the select all button
- `DeselectAllText` (Default: `"Deselect All"`) - The text to display on the deselect all button
- `ButtonStyle` (Default: `ButtonStyles.Default`) - The button class to use to style the select button

### Example
```csharp
builder.Services.AddBootstrapSelect(defaults =>
                {
                    defaults.ShowSearch = true;
                    defaults.SearchPlaceholderText = "Find";
                    defaults.ShowSearchThreshold = 10;
                    defaults.SearchNotFoundText = "Can't find any";
                    defaults.DelayValueChangedCallUntilClose = true;
                    defaults.SelectedTextFormat = SelectedTextFormats.CountGreaterThan;
                    defaults.SelectedTextFormatCount = 2;
                    defaults.MultiSelectedText = "{0} selected";
                    defaults.MultiSeparator = "|";
                    defaults.ShowPlaceholder = true;
                    defaults.MultiPlaceholderText = "Pick some";
                    defaults.SinglePlaceholderText = "Pick one";
                    defaults.ShowTick = true;
                    defaults.MaxSelectionsText = "Too Many ({0} is max!)";
                    defaults.SearchStyle = SearchStyles.StartsWith;
                    defaults.ShowActions = true;
                    defaults.SelectAllText = "All of them";
                    defaults.DeselectAllText = "None of them";
                    defaults.ButtonStyle = ButtonStyles.Success;
                });
```

## Usage

### Basic Example
```csharp
@page "/"

<BootstrapSelect TItem="Country" Data="@countries" TextField="@((item) => item.Name)"
                 ValueField="@((item) => item.Id.ToString())" TType="string" />

@code {
    private IList<Country> countries;

    protected override void OnInitialized()
    {
        countries = new List<Country> {
            new Country { Id = 1, Name = "United Kingdom" },
            new Country { Id = 2, Name = "United States" },
            new Country { Id = 3, Name = "Germany" },
            new Country { Id = 4, Name = "France" },
            new Country { Id = 5, Name = "China" }
        };
    }

    public class Country
    {
        public int Id { get; set; }

        public string Name { get; set; }
    }
}
```
### Parameters

- `TItem` (Required) - The underlying type of the objects used in the Data collection
- `TType` (Required) - The underlying type of the Value field.  Currently supported is: `string`, `int`, `IEnumerable<string>`, `IEnumerable<int>`
- `Data` (Required) - The Data to use to build the drop down options from
- `TextField` (Required) - The `Func` to select the Text value from each item within `Data`
- `ValueField` (Required) - The `Func` to select the Value value from each item within `Data`
- `OptGroupField` (Optional) - The `Func` to select the Opt Group value from each item within `Data`. If this is supplied, opt groups will be displayed, and its assumed that the `Data` will be sorted so that all items from the same opt group are positioned together
- `Id` (Optional) - Html Id to be added to the element
- `Value` (Optional) - An initial value for the select.  Can be used for 2 way binding using `@bind-value`
- `ValueChanged` (Optional) - An `EventCallback` to be called when the value changes
- `IsMultiple` (Optional. Default `false`) - Determines if the select should be a single or multi
- `ShowSearch` (Optional. Default: Uses system wide Defaults) - Determines if the search box should be displayed. When true, adds a search box to the top of the drop down (works in conjunction with `ShowSearchThreshold`)
- `ShowSearchThreshold` (Optional. Default: Uses system wide Defaults) - The threshold to determine the number of options that must exists before the search box is displayed
- `DelayValueChangedCallUntilClose` (Optional. Default: Uses system wide Defaults) - For multi's only, whether to delay calling ValueChanged until after the select is closed (default will fire after each option is selected/deselected)
- `SelectedTextFormat` (Optional. Default: Uses system wide Defaults) - Specifies how the selection is displayed with a multi select. `Values` displays a list of the selected options (separated by a ,). `Static` simply displays the select element's placeholder text. `Count` displays the total number of selected options.  `CountGreaterThan` behaves like `Values` until the number of selected options is greater than `SelectedTextFormatCount`
- `SelectedTextFormatCount` (Optional. Default: Uses system wide Defaults) - If `SelectedTextFormat` is `CountGreaterThan`, ths is the number if options that must be selected until the message is displayed
- `ShowPlaceholder` (Optional. Default: Uses system wide Defaults) - For singles only, determines if the placeholder text should be displayed
- `PlaceholderText` (Optional. Default: Uses system wide Defaults) - The placeholder text
- `Width` (Optional) - If supplied, will be used to add a width to the element
- `CssClass` (Optional) - Additional classes to be added to the element
- `Label` (Optional) - A label to added to the element
- `ValidationFor` (Optional) - A `Expression` to provide the validation information. Can only be used if component is within an `EditForm`
- `ShowTick` (Optional. Default: Uses system wide Defaults) - Whether to show the checkmark on singles
- `MaxSelections` (Optional) - For multi's only, if supplied, limit the number of options that can be selected
- `SearchStyle` (Optional. Default: Uses system wide Defaults) - When set to `SearchStyles.Contains`, searching will reveal options that contain the searched text.  When set to `SearchStyles.StartsWith`, searching will reveal options that start with the searched text
- `ShowActions` (Optional. Default: Uses system wide Defaults) - For multi's only. When set, adds two buttons to the top of the dropdown menu (Select All and Deselect All)
- `ButtonStyle` (Optional. Default: Uses system wide Defaults) - The button class to use to style the select button

See the code in the index page within samples for more examples

## Preview builds and NuGet feed

All official release packages are published to the official and public NuGet feed.

Preview builds (builds from the `main` branch) produce unofficial pre-release packages which can be pulled from the [project's NuGet feed on GitHub](https://github.com/Rob-Newman?tab=packages&repo_name=blzr.bootstrap-select).

These packages are being tagged with the Workflow's run number as the package version.

All other builds, such as builds triggered by pull requests produce a NuGet package which can be downloaded as an artifact from the individual GitHub action.

## Contributing

Everyone is welcome to contribute to Blzr.BootstrapSelect. Please take a moment to review the [contributing guidelines](CONTRIBUTING.md).

## License

Licensed under the MIT license.


text:
# Kata
Name: [Remove All The Marked Elements of a List](https://www.codewars.com/kata/remove-all-the-marked-elements-of-a-list)

Difficulty: **7 Kyu**

# Description
We need a method in the `Class List` that may remove from a given list of integers, all the values contained in a second list. The method `remove_()` will accept two arguments, a list of an uncertain amount of integers, `integer`_list and a second list that contains integer values, too, `values_list`. The method will output a list with all the integers that are not in `values_list`.

# Scenario
```ruby
class Array
  def remove_(integer_list, values_list)
    #your code here
  end
end
```


text:
---
path: /blog/html-css-flex-staircase
date: '2019-02-02'
title: HTML-CSS-Flex-Staircase
---
aIn this tutorial, we will learn how to make a staircase (or steps) using HTML and CSS. We will make use of flex. Flex is an awesome (and rather simple) way of making responsive layouts using CSS.

Let's start out with our base HTML and CSS - later on, I use JavaScript to generate the HTML quickly, but this tutorial will work with your own HTML. I use some basic styling just so we can determine where each step is.

```html
<style>
.stair {
  background-color: red;
  border: 2px solid black;
}
</style>
<div class="staircase">
 	<!-- your own html (or the JS generated HTML -->
</div>
```

I generate some HTML using JavaScript - but this tutorial assumes you have your own HTML ready to go [or you can just use my JS script]. But you do not need to understand the JS to learn Flex. Notice the "br" tag, this is just to create obvious space within each element, but you can use your own HTML such as paragraphs (but be aware that each element may not be equal in width and/or height).

```js
["<br/>one", "<br/><br/>two", "<br/><br/><br/>three", "<br/><br/><br/><br//>four", "<br/><br/><br/><br/><br/>five"].forEach(stair => {
  document.querySelector(".staircase").innerHTML += `<div class=stair>${stair}</div>`
});
```

We use a parent container element, that will determine the flexibility of each of it's nested [child] elements (the steps/stairs). My parent element is called "staircase".

```css
.staircase {
  display: flex;
}
```
We are pretty much almost done, but I want my nested elements to be a specific width, so the flex-basis property will come in useful, you can use whichever unit you like (or skip this part).

```css
.stair { /* feel free to put this with the rest of the stair's styling */
  flex-basis: 4em;
}
```

Lastly, we just need to have the container's elements make each of its child elements to tell their height to mimic a staircase - in that the height of each stair will gradually rise. We do this using the "align-items" property.

```css
.staircase {
  display: flex;
  align-items: flex-start;
}
```

The above styling will keep the start (the top) of each element's height the same, and stretch the bottom, however, this is an upside-down staircase, so lets instead use the "flex-end" value to ensure that the bottom of part of the element remains consistent and that the top will gradually rise.

```css
 .staircase {
  display: flex;
  align-items: flex-end;
}
```
We can then use CSS (such as more properties related to flex) to change the order of the steps and so on, but I'll leave this up to you. Here is the full example.

```html
<html>
	<head>
		<style>
			.stair {
  background-color: red;
  border: 2px solid black;
}

.staircase {
  display: flex;
  align-items: flex-end;
}

.stair {
  flex-basis: 4em;
}
		</style>
	</head>
	<body>
		<div class="staircase">

		</div>
		<script>
		["<br/>one", "<br/><br/>two", "<br/><br/><br/>three", "<br/><br/><br/><br//>four", "<br/><br/><br/><br/><br/>five"].forEach(stair => {
  document.querySelector(".staircase").innerHTML += `<div class=stair>${stair}</div>`
});
		</script>
	</body>
</html>
```

Thanks for reading, have fun flexing.


text:
# Events

The Framework supports a collection of events which might be important during the editing process.
Those Events can either be received by subscribing to the appropriate delegate in the NodeEditorCallbacks class
or by extending from NodeEditorCallbackReceiver (which is a MonoBehaviour) and overriding the appropriate method.
Both classes can be found in `NodeEditorCallbackReceiver`

##### Current Events

- `OnEditorStartup` : The Node Editor gets initiated (can also happen when switching scene or playmode)
- `OnLoadCanvas` (NodeCanvas): The passed canvas has been loaded as a copy
- `OnLoadEditorState` (NodeEditorState): The passed editorState has been loaded as a copy
- `OnSaveCanvas` (NodeCanvas): The passed canvas has been saved as a copy
- `OnSaveEditorState` (NodeEditorState): The passed editorState has been saved as a copy

- `OnAddNode` (Node): The passed node has been created or duplicated
- `OnDeleteNode` (Node): The passed node will get deleted
- `OnMoveNode` (Node): The passed node has been moved by the user

- `OnAddConnection` (NodeInput): A new connection has been added to the passed input. If it had a connection before, *OnRemoveConnection* has been called, too
- `OnRemoveConnection` (NodeInput): The connection will get removed from this input

##### WIP Transitioning System:
- `OnAddTransition` (Transition): The passed transition has been created
- `OnRemoveTransition` (Transition): The passed transition will be removed

-> Some of the Node-specific callbacks can also be accessed from the Node directly by overriding the appropriate method.

repository: leeeennyy/ETSM

repo_name: leeeennyy/ETSM