text:
% tpm2_loadexternal(1) tpm2-tools | General Commands Manual
%
% SEPTEMBER 2017

# NAME

**tpm2_loadexternal**(1) - load an external object into the TPM. This command
loads an external object into the TPM, forgoing TPM protections. Ie, the key
material is not protected by the parent objects seed.

# SYNOPSIS

**tpm2_loadexternal** [*OPTIONS*]

# DESCRIPTION

**tpm2_loadexternal**(1) - load an object that is not a Protected Object into the
TPM. The command allows loading of a public area or both a public and a
sensitive area.

# Output
The tool outputs the handle and name of the loaded object in a YAML format.

## Example Output via *stdout*
```
handle: 0x800000FF
name: 0x000b44e59fa5658ab443834a069a488ecc1f6d7deb47c40c6ec49871ef57d7036b43
```

# OPTIONS

  * **-a**, **--hierarchy**=_HIERARCHY_:
    hierarchy to use for the ticket, optional. Defaults to **n**, **null**.
    Supported options are:
      * **o** for the **owner** hierarchy.
      * **p** for the **platform** hierarchy.
      * **e** for the **endorsement** hierarchy.
      * **n** for the **null** hierarchy.

  * **-G**, **--key-alg**=_ALGORITHM_:
    The algorithm used by the key to be imported. Supports:
    * aes - AES 128,192 or 256 key.
    * rsa - RSA 1024 or 2048 key.
    * ecc - ECC NIST P192, P224, P256, P384 or P521 public and private key.

  * **-u**, **--pubfile**=_PUBLIC\_FILE_:
    The public portion of the object, this can be one of the following file formats:
      * TSS - The TSS/TPm format. For example from option `-u` of command `tpm2_create`.
      * RSA - OSSL PEM formats. For example `public.pem` from the command
        `openssl rsa -in private.pem -out public.pem -pubout`
      * ECC - OSSL PEM formats. For example `public.pem` from the command
        `openssl ec -in private.ecc.pem -out public.ecc.pem -pubout`

  * **-r**, **--privfile**=_PRIVATE\_FILE_:
    The sensitive portion of the object, optional. If one wishes to use the private portion
    of a key, this must be specified. Like option **-u**, this command takes files in the
    following format:
      * RSA - OSSL PEM formats. For example `private.pem` from the command
        `openssl genrsa -out private.pem 2048`
        Since an RSA public key can be derived from the private PEM file, their is no
        need to specify -u for the public portion.

    *Note*: The private portion does not respect TSS formats as it's impossible to get a
            `TPM2B_SENSITIVE` output from a previous command.

  * **-p**, **--auth-key**=_KEY\_AUTH_:
    The authorization value for the key, optional.
    Follows the authorization formatting of the
    "password for parent key" option: **-P**.

  * **-L**, **--policy-file**=_POLICY\_FILE_:
    The input policy file, optional. A file containing the hash of a policy derived from
    `tpm2_createpolicy`.

  * **-g**, **--halg**=_NAME\_ALGORITHM_:
    The hash algorithm for generating the objects name. This is optional
    and defaults to sha256 when not specified. However, load external supports
    having a *null* name algorithm. In this case, no cryptographic binding checks
    between the public and private portions are performed.
    Algorithms should follow the
    "formatting standards", see section "Algorithm Specifiers".
    Also, see section "Supported Hash Algorithms" for a list of supported
    hash algorithms.

  * **-A**, **--object-attributes**=_ATTRIBUTES_:
    The object attributes, optional. Object attributes follow the specifications
    as outlined in "object attribute specifiers". The default for created objects is:
    `TPMA_OBJECT_SIGN_ENCRYPT|TPMA_OBJECT_DECRYPT`. Optionally, if -p is specified or no
    `-p` or `-L` is specified then `TPMA_OBJECT_USERWITHAUTH` is added to the default
    attribute set.

    *Note*: If specifying attributes, the TPM will reject certain attributes like
    `TPMA_OBJECT_FIXEDTPM`, as those guarantees cannot be made.

  * **-o**, **--out-context**=_CONTEXT\_FILE_
    The file to save the object context, optional.

  * **-n**, **--name**=_NAME\_DATA\_FILE_:
    An optional file to save the object name, which is in a binary hash format. The size of the hash is
    based on name algorithm or the **-g** option.

# Notes

* If the hierarchy is *null* or the name hashing algorithm is *null*, tickets produced using the object
  will be NULL.

* If the private portion of an object is specified, the hierarchy must be *null* or the TPM will reject
  loading it.

[common options](common/options.md)

[common tcti options](common/tcti.md)

[authorization formatting](common/password.md)

[supported hash algorithms](common/hash.md)

[supported public object algorithms](common/object-alg.md)

# EXAMPLES

Load a public area generated by `tpm2_create` or `tpm2_readpublic` into the
*owner* hierarchy.

```
tpm2_create -G rsa -u pub.dat -r priv.dat
tpm2_loadexternal -a o -u pub.dat -o object.ctx
```

Load an RSA public-key (no private portion) into the *owner* hierarchy.
```
genrsa -out private.pem 2048
openssl rsa -in private.pem -out public.pem -outform PEM -pubout
tpm2_loadexternal -a n -Grsa -u public.pem -o object.ctx
```

Load an RSA key-pair into the *null* hierarchy.
```
genrsa -out private.pem 2048
tpm2_loadexternal -a n -Grsa -r private.pem -o object.ctx
```

Load an AES key into the *null* hierarchy.
```
dd if=/dev/urandom of=sym.key bs=1 count=16
tpm2_loadexternal -a n -Gaes -r sym.key -o object.ctx
```

# RETURNS

0 on success or 1 on failure.

[footer](common/footer.md)


text:
---
title: "examples / images"
---

# Images

Exclamation mark, followed by brackets wrapping the desired `alt=""` text,
followed by parenthesis for the `src=""` value of the image element.

    ![your alt text](/path/to/the/image.jpg)

![example image](//unsplash.it/800/480/?random&1)

license: MIT

branch_name: refs/heads/master

extension: md

license_type: permissive


text:
---
layout: post
title: "Deploy a Racket Web App"
description: "How to reverse proxy a a Racket Web Server with nginx, and manage it with daemontools."
keywords: "racket, web server, nginx, apache, reverse proxy, trycode.io"
date: 2015-02-10 16:35:34
permalink: deploy-racket-web-application
published: false
categories:
  - Racket
  - web application
  - nginx
  - reverse proxy
---
You created a Racket Web Application, and you want to deploy it - but how?

I opted to host my app on a Digital Ocean *droplet* (which is just clever marketing-speak for Virtual Private Server, or *VPS*).

After provisioning a droplet with Ubuntu 14.04 x64, I updated my domain to use Digital Ocean's name servers. I added an A record that pointed to my droplet's IP, and a *www* CNAME that referenced my A record.

So, now I have a server, and my DNS is handled; but how do I get my Racket Web App up for public consumption?

###Apache
I had mapped my domain name to my droplet, but set the Racket Web Server to listen on localhost - I wasn't sure that I wanted the public to have direct access to it.

A quick Google search led me to The Racket Web Server Troubleshooting and Tips page, which has a section on using Apache to proxy requests to a Racket Web Server. Ooh, proxies!

Now, Apache is awesome - it has remained the most popular HTTP server since April 1996, and in 2009 it became the first web server software to serve more than 100 million websites. In my case, however, using Apache would be like stuffing 10 pounds in a 5 pound sack.

In some circles, nginx is the undisputed king of reverse proxy servers. Its lightweight, performant, and scalable; and its known for having low memory usage - which makes it great for a VPS. And I'm hosting my site on a VPS.

###By Proxy Request Only
My plan was to lock down my Racket Web Server by placing it in a non-public subnet (for its own good, of course; not because its coded in a minority language), and I decided to provide access through an nginx Reverse Proxy.

Reverse proxies are cool - they provide benefits such as:

* security
* caching
* serving static content
* caching
* compression
* redirects/url rewrites

I decided to use all those features.

####Installing and Configuring nginx
On Ubuntu, installing nginx is as simple as:
{% highlight bash %}
sudo apt-get install nginx
{% endhighlight %}

*Go to http://wiki.nginx.org/Install to view instructions for other Operating Systems.*

And configuring an nginx reverse proxy is as simple as:
{% highlight nginx %}
server {
      server_name domain.tdl; # your web app's domain name
      proxy_pass  http://<IP_ADDRESS>:8080; # ip:port of your racket web server
}
{% endhighlight %}

I also wanted to redirect all *www* subdomains to the host url (from http://www.trycode.io to http://trycode.io), and https to http; so I added a permanent redirect (301) to the config file:

{% highlight nginx %}
server {
      server_name www.trycode.io; # domain to redirect from
      rewrite  ^/(.*)$  http://trycode.io/$1 permanent; # redirect to
}
{% endhighlight %}

###nginx Caching
The main benefit of a cache server is that we put less load on our Racket Web Server. Requests for static or dynamic assets that are cached need not even reach the application server - our cache server can handle many requests by itself!

I also added caching, to save resources and speed up page loading; you can see the full config in this gist.


text:
# Basic Node.js Tooling Setup

Basic tooling setup for Node.js projects including EditorConfig, ESLint, Husky, lint-staged, Prettier, TypeScript and VS Code

repository: schnerring/basic-nodejs-tooling-setup

repo_name: schnerring/basic-nodejs-tooling-setup


text:
# namecheapdyndns
A very, very simple dyndns client for namecheap.

##How to use
* Run the exe with the /c switch (config)
* Follow the on-screen instructions
* Make sure the config saved right
* Set up a scheduled task with whatever (Task Scheduler?)
    * Whenever the executable is ran without the switch it'll update.

repository: jmazouri/namecheapdyndns

repo_name: jmazouri/namecheapdyndns


text:
# darksky-node
NodeJS API client for Dark Sky API.

# Install

```bash
$ npm install darksky-node --save
```

# Configuration

You'll need a developer key for the Dark Sky API which can you can create [here](https://darksky.net/dev/register).

# Usage

Create an instance of the Dark Sky API Client:

```js
var DarkSky = require('darksky-node');

var darkSkyClient = new DarkSky('myApiKey');
```

## Options

All methods take the same options object:

* exclude: array containing any of: currently, minutely, hourly, daily, alerts, flags.
* extend: pass hourly for hour-by-hour data for the next 168 hours, instead of the next 48.
* lang: en or any other i18n
* units: us, si, ca, uk2, auto

## Methods

Once you have an instance of the API you can call any of the available methods

### Forecast

A Forecast Request returns the current conditions, a minute-by-minute forecast for the next hour, an hour-by-hour forecast for the next 48 hours, and a day-by-day forecast for the next week.

```js
darkSkyClient.forecast(latitude, longitude, options, function(err, forecast){
    if(err) console.error(err);
    else console.dir(forecast);
});
```

### Time-Machine

A Time Machine Request returns the observed (in the past) or forecasted (in the future) hour-by-hour and daily weather conditions for a particular date.

```js
darkSkyClient.timemachine(latitude, longitude, new Date(), options, function(err, forecast){
    if(err) console.error(err);
    else console.dir(forecast);
});
```

repository: brianantonelli/darksky-node

repo_name: brianantonelli/darksky-node


text:
# navsu

NavSU is a MATLAB toolbox for general GNSS processing.  Currently contains parsers, time functions, tools to download and and handle IGS products, and more.

# How to run:
Just put the +navsu toolbox in your path!  See the \examples folder for run examples.

# Sub-toolboxes:
## svOrbitClock
Class for downloading and handling GNSS corrections, including orbit, clock, ionospheric, antenna phase center, and differential code biases.  See the example \examples\example_setup_svOrbitClock.m for some more information.

## ftp
Main function here: navsu.ftp.download to download various IGS products.

## readfiles
Lots of parsing tools here.  They can be called directly from here, or they can be used by the svOrbitClock object.
To parse RINEX obsevation files: navsu.readfiles.loadRinexObs
To parse RINEX orbit .sp3 files: navsu.readfiles.readSp3

## svprn
Tools for converting to and from SVN and PRN as well as additional information about satellites including block and frequency assignements (for GLONASS)

## time
Time utilities, convert to and from GPS epochs (seconds since start of GPS time), julian date, MATLAB datenum, and calendar date.

repository: zhufengGNSS/navsu

gha_license_id: MIT

repo_name: zhufengGNSS/navsu


text:
---
layout: text/textblock
---

The [team will do research with users](../../user-research/research-stages/#user-research-in-discovery-stage) to get a deep understanding of the problems that the service aims to solve. They do this by finding out:
- who the users are and what they are really trying to do when they  use the service and its products (for example, planning to travel, not just applying for a passport)
- what the current experience is for users and what products they use
- what the specific user needs are for the service

You will discover [all kinds of user needs](https://identityassurance.blog.gov.uk/2015/07/24/gov-uk-verify-how-we-talk-about-user-needs/), including:
- stated needs — the things that users explicitly tell you that they need (for example, they may need your service to be mobile responsive)
- unstated needs — the things that users take for granted that your service will have (for example, they may need information that’s easy to understand)
- created needs — the things that users are forced to do because of policy and the way government works (for example, they may have to use different online accounts for different stages of the same service)

The research you do in Discovery should include all users:
- end users, including professional ones (for example, businesses and intermediaries)
- public servants supporting service delivery and policy users — even if you are only planning to focus on a small part of that experience

You will also need to understand:
- existing business processes associated with the service, by using business process mapping
- technology that supports business processes
- how data flows through the service
- the government’s policy intent for the service, so that you are able to align this with user needs
- any obvious technical, legislative or other constraints relating to the service

The team will keep doing user research through the whole process, including after the service goes live.

repository: govau/service-manual

gha_language: JavaScript

repo_name: govau/service-manual


text:
# GAUSS-03211 -- GAUSS-03220

GAUSS-03211: "malformed tsquery: operand not found"

SQLSTATE: XX000

Description: No operator is found in the string of the tsquery type.

Solution: Check the input and ensure that the variable of the tsquery type contains an operator.

GAUSS-03212: "malformed tsquery: extra nodes"

SQLSTATE: XX000

Description:Internal system error.

Solution:Contact technical support.

GAUSS-03213: "unrecognized operator type: %d"

SQLSTATE: XX000

Description: An incorrect operator is entered.

Solution: Use only !, |, or & as the input operator.

GAUSS-03214: "unrecognized tsquery node type: %d"

SQLSTATE: XX000

Description:Internal system error.

Solution:Contact technical support.

GAUSS-03215: "invalid size of tsquery"

SQLSTATE: XX000

Description:Internal system error.

Solution:Contact technical support.

GAUSS-03216: "invalid tsquery: invalid weight bitmap"

SQLSTATE: XX000

Description:Internal system error.

Solution:Contact technical support.

GAUSS-03218: "invalid tsquery: total operand length exceeded"

SQLSTATE: XX000

Description: The string of the tsquery type exceeds the upper limit \(1<<20\) - 1.

Solution: Ensure that the length of the string does not exceed the upper limit.

GAUSS-03219: "invalid tsquery: unrecognized operator type %d"

SQLSTATE: XX000

Description: An incorrect operator is entered.

Solution: Ensure that the operator uses one of the following characters: ! | &.


text:
**NOTE: We are not accepting external contributions at this time.**

If you find a bug or have a feature request related to these samples, please [file an issue](https://github.com/googlemaps/maps-sdk-for-ios-samples/issues).

If you find a bug or have a feature request related to one of the SDKs, you can file an issue on either the
[Google Maps SDK for iOS Issue Tracker](https://developers.google.com/maps/documentation/ios-sdk/support#issue-tracker).or the
[Places SDK for iOS Issue Tracker](https://issuetracker.google.com/savedsearches/5050150).

repository: rudolfkopriva/maps-sdk-for-ios-samples

branch_name: refs/heads/main

repo_name: rudolfkopriva/maps-sdk-for-ios-samples


text:
# GoogleCloudPlatform_Reddit_NLP
Using Google's Compute Engine, Cloud Storage, NLP API, and an analytical database to process and interpret Reddit New feed sentiment.

Overall process and components used for the project.
--------------------------
Components:

A preemptable VM
GCP Bucket
GCP Postgres Instance
Python script to read in Reddit RSS feed to VM then load it to the GCP Bucket
Python analyze-entity-sentiment command to analyze the reddit data and write it to a json file
Overall Process:

After creating all of the components, I ran the python script to pull reddit rss feed data into the VM and load it to the GCP bucket.
Then I used the python analyze-entity-sentiment command to analyze the sentiment in the reddit data and write it to a file on the VM
Then I downloaded that file to my PC and uploaded it to the JupyterHub module8/exercises folder
Then I read the json file into a python dataframe and uploaded it to the GCP Postgres instance
Then I pulled the data from the postgres database into a python dataframe (just to demonstrate it can be done)
Then I wrangled the data a bit and created some basic visualizations


text:
# go-rockseven
[![Build Status](https://travis-ci.org/JanBerktold/go-rockseven.svg)](https://travis-ci.org/JanBerktold/go-rockseven) [![Coverage Status](https://coveralls.io/repos/JanBerktold/go-rockseven/badge.svg?branch=master)](https://coveralls.io/r/JanBerktold/go-rockseven?branch=master) [![GoDoc](http://godoc.org/github.com/janberktold/go-rockseven?status.svg)](http://godoc.org/github.com/janberktold/go-rockseven)

A simple package for interacting with your http://www.rock7mobile.com/ devices using HTTP requests.

## Installation

Package is designed to be compatible with every major Go release since 1.2. It can be installed using Go's native toolchain.

		go get github.com/janberktold/go-rockseven

## TODO

- Perform final tests with RockBLOCK device
- Write further GoDoc documentation

## Sending

Sending a message to an endpoint, providing the IMEI number:

```go
import (
	"fmt"
	"github.com/janberktold/go-rockseven"
)

func main() {
	client := rock7.NewClient("user", "pass")

	if code, err := client.SendString("1234689", "Hello, world!"); err == nil {
		fmt.Printf("Sent message, assigned messageId: %v\n", code)
	} else {
		fmt.Printf("Failed sending message %q\n", err.Error())
	}
}
```

Alternatively, you can set a default IMEI number.

```go
client.SetDefaultIMEI("1234689")
code, err := client.SendStringToDefault("Hello, world!")
```

Sending a byte slice can be done using the corresponding methods:

```go
client.SetDefaultIMEI("1234689")
code, err := client.SendToDefault([]byte{79, 75})
```

or

```go
code, err := client.Send("1234689", []byte{79, 75})
```

## Receiving

The endpoint is designed to fit nicely into golang's net/http package and can therefore be used as part of a standard HTTP server. The example below spawns a endpoint which listens on /recieve and prints all incoming messages to the stdout.

```go
import (
	"net/http"
	"github.com/janberktold/go-rockseven"
	"fmt"
)

func printMessages(end *rock7.Endpoint) {
	for {
		msg := <-end.GetChannel()
		fmt.Printf("Recieved message %q\n", msg.Data)
	}
}

func main() {
	endpoint := rock7.NewEndpoint()
	go printMessages(endpoint)
	http.Handle("recieve", endpoint)
	http.ListenAndServe(":80", nil)
}
```

In general, there are two different approaches to access incoming messages: On the one hand, you can obtain a recieve-only channel via client.GetChannel() and implement your own reading mechanism. Example:

```go
for {
	msg := <-endpoint.GetChannel()
	fmt.Printf("Recieved message %q\n", msg.Data)
}
```

Alternatively, you can use the provided convenience methods Read and ReadWithTimeout(time.Duration) to keep track of incoming messages. Both methods are blocking, as set in the Golang coding guidelines. Simple read:

```go
for {
	msg := endpoint.Read()
	fmt.Printf("Recieved message %q\n", msg.Data)
}
```

Simple read with timeout:

```go
for {
	if msg, err := endpoint.ReadWithTimeout(2 * time.Second); err == nil {
		fmt.Printf("Recieved message %q\n", msg.Data)
	} else {
		fmt.Println(err.Error())
	}
}
```

A timeout can also be implemented using the raw channel:

```go
for {
	select {
	case msg := <-endpoint.GetChannel():
		fmt.Printf("Recieved message %q\n", msg.Data)
	case <-time.After(2 * time.Second):
		fmt.Println("Hit time limit")
	}
}
```

repository: JanBerktold/go-rockseven

repo_name: JanBerktold/go-rockseven


text:
# volumio-plugin-helper
Simple bash script to install plugins from repo's.

## Lazy installation of unsanctioned versions
1. SSH into server
2. Execute the below command:
```
sudo wget -O volumio_install_from_zip.sh https://raw.githubusercontent.com/Saiyato/volumio-plugin-helper/master/volumio_install_from_zip.sh && sudo chmod +x volumio_install_from_zip.sh
```
This will download the installation script.

3. Execute the script (DO NOT USE sudo!) you've just downloaded

Parameters:

$1 = author

$2 = plugin name (zipfile must have the same name)

$3 = branch (will check if specified branch exists, otherwise it will fail; no time to add graceful catches)

E.g. if you want the kodi plugin by Saiyato:
```
./volumio_install_from_zip.sh Saiyato volumio-kodi-plugin
```
Update: use bash instead of sh, for more functionality (string comparison to cater for the new top-level branch naming convention on GitHub)

You can use this install script for any plugin (if they are hosted separately), just add $1 = author and $2 = repository.
For example this script will not work (unless you alter it) for plugins hosted in a volumio-plugins collection.

## Lazy installation of unsanctioned versions from a forked repo using a zip
1. SSH into server
```
sudo wget -O volumio_install_zip_from_fork.sh https://raw.githubusercontent.com/Saiyato/volumio-plugin-helper/master/volumio_install_zip_from_fork.sh && sudo chmod +x volumio_install_zip_from_fork.sh
```
This will download the installation script

3. Execute the script (DO NOT USER sudo!) you've just downloaded

Parameters:

$1 = author

$2 = category

$3 = plugin name

$4 = zip file name (optional, if it's omitted $3 is used)

E.g. if you want to install volspotconnect:
```
./volumio_install_zip_from_fork.sh balbuze music_service volspotconnect volspotconnect
```
Or, if you omit the optional zip file name (since it's the same as the plugin name)
```
./volumio_install_zip_from_fork.sh balbuze music_service volspotconnect
```

## Lazy installation of unsanctioned versions from a forked repo (might need to download/build modules; which takes time!)
1. SSH into server
```
sudo wget -O volumio_install_from_fork.sh https://raw.githubusercontent.com/Saiyato/volumio-plugin-helper/master/volumio_install_from_fork.sh
```
This will download the installation script

3. Execute the script (DO NOT USER sudo!) you've just downloaded

Parameters:

$1 = author

$2 = category

$3 = plugin name

E.g. if you want to install the rotary encoder:
```
sh volumio_install_from_fork.sh Saiyato user_interface rotaryencoder
```
Or Qobuz from the volumio repo
```
sh volumio_install_from_fork.sh volumio music_service qobuz
```

repository: Saiyato/volumio-plugin-helper

repo_name: Saiyato/volumio-plugin-helper


text:
# openapi-mock-server

`openapi-mock-server` is an easy to use CLI program to create mock servers from an OpenAPI Specification.

This module is built on top of [express-openapi-validator](https://github.com/cdimascio/express-openapi-validator#-express-openapi-validator) and use [json-schema-faker](https://github.com/json-schema-faker/json-schema-faker) to generate random responses to HTTP requests.

> Fully supports circular $ref pointer in the OpenAPI Specification.

## Installation

This is a [Node.js](https://nodejs.org/en/) module available through the [npm registry](https://www.npmjs.com).

Installation is done using the [`npm install` command](https://docs.npmjs.com/downloading-and-installing-packages-locally):

```sh
$ npm install -g @soluzioni-futura/openapi-mock-server
```

## Quick start

Install `openapi-mock-server` globally
```sh
$ npm install -g @soluzioni-futura/openapi-mock-server
```

Start the mock server

```sh
$ mock --openapi "path or URL to the OpenAPI Specification"

# or run the mock server in debug mode

$ DEBUG=mock* mock --openapi "path or URL to the OpenAPI Specification"
```

## Command line flags

Many options have command line equivalents. In those cases, any arguments passed here will override the config file, if you're using one. This is a list of all supported options:

```
--openapi                              path or URL to the OpenAPI Specification
--port                                 mock server port (default 8080)
--mock-config                          path to mock server config file
                                       (default mock-config.(ts, js, json))
--mock-overrides                       path to mock server overrides config file
                                       (default mock-overrides.(ts, js, json))

--express.validateRequests             determines whether the validator should validate
                                       requests (default false)
--express.validateResponses            determines whether the validator should validate
                                       responses (default false)
--express.unknownFormats               defines how the validator should behave if an unknown
                                       or custom format is encountered (default "ignore")

--jsf.fillProperties                   if enabled, it will try to generate missing properties
                                       to fulfill the schema definition (default: false)
--jsf.useExamplesValue                 if enabled, it will return a random value from examples
                                       if they're present (default: true)
--jsf.useDefaultValue                  if enabled, it will return the default value if present
                                       (default: true)
--jsf.failOnInvalidFormat              if enabled, it will throw an Error for unknown formats
                                       (default: false)

--cors.origin                          configures the Access-Control-Allow-Origin CORS header
                                       (default: "*")
--cors.credentials                     configures the Access-Control-Allow-Credentials CORS header.
                                       Set to true to pass the header, otherwise it is omitted.
                                       (default: true)
```

## Configuration files

`openapi-mock-server` accepts two types of configuration files:

1. a mock server [config file](#mock-server-config-file)
2. a mock server [overrides config file](#mock-server-overrides-config-file)

### Mock server config file

> By default `openapi-mock-server` will try to import the files `mock-config` (.ts, .js, .json) from the current directory `process.cwd()`. The first successful import will be used.

You can specify the path of this file via CLI flag `--mock-config`

```bash
$ mock --mock-config path/to/file
```

This file is used to configure express and json-schema-faker of the mock server, it's divided into three sections:
1. `express` contains express configurable options. [json schema](./src/schemas/expressConfig.json) | [about express-openapi-validator options](https://github.com/cdimascio/express-openapi-validator#openapivalidator-middleware-options) (not all options are supported, see the json schema to see which ones are supported)
2. `jsf` contains json-schema-faker configurable options. [json schema](./src/schemas/jsfConfig.json) | [about jsf options](https://github.com/json-schema-faker/json-schema-faker/tree/master/docs#available-options)
3. `cors` contains cors configurable options. [cors schema](./src/schemas/corsConfig.json) | [about cors options](https://github.com/expressjs/cors#configuration-options) (not all options are supported, see the json schema to see which ones are supported)

```js
// example
{
  "express": {
    "port": 9090,
    "openapi": "path/or/URL/to/OpenAPI/Specification"
  },
  "jsf": {
    "failOnInvalidFormat": true
  },
  "cors": {
    "origin": "http://localhost:3000"
  }
}
```

### Mock server overrides config file

> By default `openapi-mock-server` will try to import the files `mock-overrides` (.ts, .js, .json) from the current directory `process.cwd()`. The first successful import will be used.

You can specify the path of this file via CLI flag `--mock-overrides`

```bash
$ mock --mock-overrides path/to/file
```

This file able you to override the mock server behavior to particular http requests [json schema](./src/schemas/mockOverrides.json).

If an override of a path is provided that it will be used instead of the random response. Only `statusCode: 200` is supported for now.

**Consider splitting this file into multiple ones** because one single large mock-overrides file is not maintainable. [Recursive import mock-overrides files](#recursive-import-mock-overrides-files)

```js
// example
{
  "routes": [
    {
      "request": {
        "path": "path/to/override",
        "method": "get"
      },
      "responses": [
        {
          "statusCode": 200,
          "headers": {
            // response header
          },
          "body": {
            // response body
          }
        }
      ]
    }
  ]
}
```

#### Recursive import mock-overrides files

Customize mock server responses via mock-overrides files is a very convenient way when you do not have an up and running backend or simply you are testing an edge case (es. API that requires auth, a key match with an object in S3).

The mock-overrides file can become very long and hard to maintain, in order to solve this issue we introduced a way to import partial files instead of a single one.

To achieve this feature we used [glob](https://github.com/isaacs/node-glob#readme), so **instead of passing a file path you can specify a pattern** and the mock server will automatically merge all those files. The schema of those files follows the convention specified above.

#### Example of recursive import mock-overrides files

Let's say that you want to split the mock-overrides file into 2 files:
- *mock/mock-overrides-1.json*
- *mock/mock-overrides-2.json*

```js
// mock/mock-overrides-1.json
{
  "routes": [
    {
      "request": {
        "path": "path/to/override/1",
        "method": "get"
      },
      "responses": [
        {
          "statusCode": 200,
          "headers": {
            // response header
          },
          "body": {
            // response body
          }
        }
      ]
    }
  ]
}

// mock/mock-overrides-2.json
{
  "routes": [
    {
      "request": {
        "path": "path/to/override/2",
        "method": "get"
      },
      "responses": [
        {
          "statusCode": 200,
          "headers": {
            // response header
          },
          "body": {
            // response body
          }
        }
      ]
    }, {
      "request": {
        "path": "path/to/override/3",
        "method": "get"
      },
      "responses": [
        {
          "statusCode": 200,
          "headers": {
            // response header
          },
          "body": {
            // response body
          }
        }
      ]
    }
  ]
}
```

Now, to run the mock server that uses those 2 files (NOTE: both into the folder `mock`)

```bash
mock --mock-overrides "./path/to/mock/folder/*.json"
```

**Remember to wrap the pattern with `"`**

## With NodeJS or TypeScript

It's possible to launch the mock server via a JS or TS script. It's an awesome way when you want to generate mock-overrides via scripts.

The `MockServer` function exported accepts an object with 4 properties:

- `mockConfigPath?: string` path to [mock-config file](#mock-server-config-file)
- `mockOverridesPath?: string` path to [mock-overrides file](#mock-server-overrides-config-file)
- `mockServerConfig?: MockServerConfigType` [mock-config object](#mock-server-config-file), if provided will overwrite default and *mockConfigPath* values
- `mockOverrides?: MockOverrides` [mock-overrides object](#mock-server-overrides-config-file), if provided it will be used and **any other files will be ignored**

**NOTE:** the MockServer will still try to require the defaults files if no path is provided ([mock-config file](#mock-server-config-file), [mock-overrides file](#mock-server-overrides-config-file)).

```ts
// example

const MockServer = require("@soluzioni-futura/openapi-mock-server")

const options = {
  mockConfigPath: "...",
  mockOverridesPath: "...",
  mockServerConfig: {
    express: {
      openapi: "..."
    }
  },
  mockOverrides: {
    routes: [
        ...
    ]
  }
}

MockServer(options)
```

## Developer instructions

In order to work with this project you need:

- [Node.js](https://nodejs.org/en/)

Before you start developing you must prepare the environment

```bash
$ git clone https://github.com/soluzionifutura/openapi-mock-server.git
$ cd openapi-mock-server
$ npm install
```

To build the solution run

```bash
$ npm run build
```

It will build the solution in the `dist/` folder. Thus to try it out

```bash
$ npm start
```

If you just wanna run your changes locally without building the project

```bash
$ npm run dev
```

> You may want to pass a CLI flag to the script. [npm documentation about "--"](https://docs.npmjs.com/cli/v6/commands/npm-run-script)
> For example: `npm run dev -- --port 9090` or `npm start -- --port 9090`

**NOTE** If you change a **\*.json** file in `src/schemas` then you must regenerate typescript types running
```bash
$ npm run init:types
```

repository: soluzionifutura/openapi-mock-server

gha_language: TypeScript

repo_name: soluzionifutura/openapi-mock-server


text:
# CAD Backend Guide
## Implementations
BlackParrot has been silicon-validated. The design has been tested on a variety of process nodes including:
* GlobalFoundries 12nm (Tape-out)
* TSMC 40nm
* FreePDK 45nm
* SAED 90nm

BlackParrot has also been FPGA-validated, with multicore test programs able to run on:
* Kintex-7
* Ultrascale+

## ASIC Tips and Tricks
### Hierarchical Flow
For multicore tapeouts, we find it essential to use a hierarchical CAD flow to reduce runtimes. A
hierachical flow basically decomposes a large top level design into MIMs (Multiply Instantiated
Modules), which are exactly the same, down to placement and routing of standard cells. The advantage
of this is that reuse reduces runtime signficantly, as well as converges timing quicker. The
disadvantage is that there may be optimization left on the table if the MIMs are in substantially
different environments.

We use the following hierarchical scheme for BlackParrot tapeouts:
* Top - bsg_chip
* Mid -
* Bot - bp_tile_node bp_io_tile_node

bsg_chip is an test chip skeleon which uses an open-source BaseJump STL padring, bsg_tag bootstrapping and low-speed configuration, as well as hardened clock generators.
bp_tile_node is a BlackParrot tile that has CDC, routers, and link adapters so that it can connect to other tiles in a regularized 2D mesh.

### Hardened Memories
To achieve good QoR (Quality of Results), ASIC designers must "harden" large memories in their chip. Unlike in traditional FPGA flows, RAMs are not often inferred but must be explicitly specified by the designer. Usually this process involves first invoking a vendor-provided SRAM compiler, then substituting this black-box macro for the RTL memory variant, using the vendor-provided Verilog model for simulation instead.

For BlackParrot, we find the following memories to be worth hardening for good QoR:
* BTB memory
* I$ data
* I$ tags
* I$ stat
* Integer register file
* FP register file
* D$ data
* D$ tags
* D$ stat
* CCE directory tags
* CCE Instruction RAM
* L2 slice data
* L2 slice tags
* L2 slice stat

### Retiming
To achieve reasonable timing closure, the following blocks MUST be retimed. We find that adaptive retiming is typically insufficent and manual register retiming should be used to guide the tools:
* AUX pipeline
* FMA pipeline

## FPGA Tips and Tricks
### Hardened Memories
For the Ultrascale+, it is important to signify in your RAM model that you wish to use distributed BRAM for bitmasked memory. Otherwise, the tool will not infer a BRAM, even for a large bitmasked array. In BaseJump STL, using the hardened flow this looks like: [Distributed BRAM](https://github.com/bespoke-silicon-group/basejump_stl/blob/master/hard/ultrascale_plus/bsg_mem/bsg_mem_1rw_sync_mask_write_bit.v#L36)
### Retiming
We have not found a reliable way to force Vivado to retime the deeply pipelined FMA unit. Having
tried all the usual pragma suspects, we suggest manually pipelining the FMA and AUX units. Please
contribute back if you do!

repository: mfkiwl/pythondata-cpu-blackparrot

repo_name: mfkiwl/pythondata-cpu-blackparrot


text:
# Crosschain Web3J

This directory contains jars from Web3J enhanced to allow Crosschain. When / if the
features are integrated into official Web3J, this directory should be removed and the
gradle files should be updated to use the official web3j.

The script gather.sh copies files from ../../../sidechains-web3j directories. The
assumption is that the modified Web3J has been built in that directory. The modified
Web3J code can be obtained from here:

https://github.com/PegaSysEng/sidechains-web3j

Build with `./gradlew installDist` on Java 8.

repository: hmijail/sidechains-samples

gha_language: Java

repo_name: hmijail/sidechains-samples


text:
# API (MVP 0.0.1)

## 1. Upload

### I. Upload metadata
```
POST /api/file/upload

{
    "name": "file_name.ext",           // required
    "size": 123,                       // required, size in bytes
    "tags": ["tag1", "tag2", "tag3"]   // optional
}
```
response (success):
```json5
{
    "id": "ID",                        // unique ID as assigned by storage engine
    "uploadUrl": "https://s3-url"      // Signed S3 URL for PUT generated by backend
}
```
response (error):
```json
{
    "error": "error description"
}
```

### II. Upload file
First you upload the file content
```
PUT https://s3-url

file bytes...
```

Second you confirmUpload to metadata
```
POST /api/file/confirmUpload

{
    "id": "ID",
    "success": true,                  # true|false
    "error": "error description"      # in case success=false
}
```
response (success):
```json
{
    "success": true
}
```
response (error):
```json
{
    "error": "file not found"
}
```

In case of error the metadata will be deleted.

## 2. List files
```
GET /api/file?name=partOfName&tags=tag1,tag2,tag3&page=2&pageSize=10&sort=name,desc
```

| param    | optional | default       | description                           |
|----------|----------|---------------|---------------------------------------|
| name     | yes      |               | part of name to filter by             |
| tags     | yes      |               | list of tags to filter by (AND-logic) |
| page     | yes      | 0             | 0-based                               |
| pageSize | yes      | 10            |                                       |
| sort     | yes      | uploaded,desc |                                       |

Sort fields:
- name
- size
- uploaded

response (success):
```json5
{
    "page": [
        {
            "id": "",
            "name": "",
            "size": "",
            "tags": "",
            "url": "",
            "uploaded": "",    // timestamp or YYYY-MM-DD hh:ss TODO
        },
    ],
    total: 27             // total records
}
```

## 3. Delete file
```
DELETE /api/file/{ID}
```
response (success):
```json
{
    "success": true
}
```
response (error):
```json
{
    "error": "file not found"
}
```

## 4. Assign tags
```
POST /api/file/{ID}/tags

["tag1", "tag2", "tag3"]
```
returns status 200 and body
```json
{"success": true}
```

## 5. Remove tags

```
DELETE /api/file/{ID}/tags

["tag1", "tag3"]
```

returns status 200 if all OK and body
```json
{"success": true}
```

returns status 400 if one of the tags is not present on the file and body
```json
{
    "success": false,
    "error": "tag not found on file"
}
```

gha_language: Go


text:
# CH55x_UART
A tiny UART library for CH55x series MCU
Currently, only UART0 can be work.

## Resource
UART peripheral require Timer1 or Timer2 for generating any baudrate at MODE1 and MODE3.
In this situation, SMOD and/or bTMR_CLK are controlled by divider configration.
These bits are effect all timer clock.
When fixed baudrate it's not required.


text:
---
# An instance of the Experience widget.
# Documentation: https://wowchemy.com/docs/page-builder/
widget: experience

# This file represents a page section.
headless: true

# Order that this section appears on the page.
weight: 40

title: Experience
subtitle:

# Date format for experience
#   Refer to https://wowchemy.com/docs/customization/#date-format
date_format: Jan 2006

# Experiences.
#   Add/remove as many `experience` items below as you like.
#   Required fields are `title`, `company`, and `date_start`.
#   Leave `date_end` empty if it's your current employer.
#   Begin multi-line descriptions with YAML's `|2-` multi-line prefix.
experience:
  - title: Senior Scientist
    company: HHMI, Janelia Research Campus - Betzig Group
    company_url: 'https://www.janelia.org'
    location: Ashburn, VA
    date_start: '2015-10-01'
    date_end: ''
    description: |2-
        Created the hardware control system and control software for all Betzig microscopes and few others

        * Lattice Light Sheet
        * AO Lattice Light Sheet
        * AO Bessel
        * Structured Illumination Micrsocope
        * Opposing Objective Microscope
        * Cryo-SIM/-PALM
        * MOSAIC (Adaptive Optics added to everything we can in one scope)

  - title: VP of Scientific Software
    company: Coleman Technologies (now named Sciotex)
    company_url: 'https://sciotex.com/'
    location: Newtown Square, PA
    date_start: '2008-05-01'
    date_end: '2015-10-01'
    description: |2-
        Grew a small machine vision-centric company, while solving industrial part-inspection tasks and scientific research automation challenges.

        * Built systems to inspect: Dinnerware, truck brakes, agriculture seeds, optical fiber, mass flow controllers,...
        * Point-cloud 3D laser height mapping, bright & dark field imaging, Area scan cameras, and Conveyor-based line-scan camera systems
        * Oversaw projects, contracts, budgets, sales, small teams, recruitment, and timelines...and other the many hats that come with a small business.

  - title: Graduate Student Researcher
    company: University of Pennsylvania - Kikkawa Group
    company_url: 'https://www.physics.upenn.edu/people/standing-faculty/jay-kikkawa'
    location: Philadelphia, PA
    date_start: '2002-09-01'
    date_end: '2008-05-01'
    description: |2-
        Studied and measured carbon nanotubes using optical, electrical, and thermal measurements, with some electron microscopy and magnetic measurements along for the ride too.

        Multi-day measurement averaging and mapping of large parameter space required heavy (and robust!) automation. I learned and loved to build control algorithms for collecting and analyzing these data automatically, and got a big kick out of bringing that over to a multi-user facility.

---

repository: dmilkie/starter-academic

repo_name: dmilkie/starter-academic


text:
# {{name}}

### Setup locally for development

```shell
make develop
```

### Install for deployment

```shell
make install
```

### Launch a Visdom server

```shell
make server
```

### Train a model

```shell
make train/default
```

repository: mgharbi/ttools

gha_language: Python

repo_name: mgharbi/ttools


text:
---
layout: post
title: Thoughts from Places — The Shrine of Remembrance
comments: yes
hero:
category: reflection
tags: thoughts-from-places
---

>Far from Flanders fake poppies flow
>Reminding me of headstones, row on row,
>Standing in memory of those who died
>While PC-9s, in Missing Man, fly
>Heard above the field gun’s bellow.

I’ve never been to the Remembrance Day service before, so it was very interesting. It was much more like Reserve Forces Day than Anzac Day, I suppose that since Anzac day has become a bigger deal people are more keen to speak there?  This was more ... simple, although no less dedicated.

Shrine of Remembrance, Melbourne on Remembrance Day 2014

The usual VIPs - the Governor, MPs, the Lord Mayor, ADF & RSL bigwigs, along with the Shrine Trustees were joined by most of the Consular Corps, a reminder that we and the Kiwis are weird for making Anzac Day our primary day of commemoration.

Another thing I noticed was the unusual flag arrangement - Australian Flag, Union Jack, French Tricolour. Turns out they have rules about which flags they fly based on which countries have their national memorial days when. They also will fly unit flags on their individual memorial days. I don’t know how they decide whose flags will fly November 11 - maybe they always use the two imperial flags to try and cover as much ground as possible, or perhaps they have a rotation?

Governor Chernov mentioned in his speech that the Shrine of Remembrance was dedicated on Remembrance Day in 1934 in a ceremony attended by 300,000 people at a time when barely a million people lived in Melbourne, and while today’s ceremony had barely a fraction of that number, I still felt like Chief Inspector Finch.

I got this feeling of connection, and I could see the whole thing stretched out as a long chain of events stretching back to General Monash getting the politicians to agree to construct his vision ... I felt that although I stood there 80 years after the dedication, I was still much closer to the beginning of this tradition than the end.

Lest we forget.

gha_language: HTML


text:
# Mirror Pila!

Web app for displaying information in the mirror.  The smart mirror, with you know a Rapsberry Pi and Arduino.

# Smart Mirror

Inspired by [this video](https://youtu.be/fkVBAcvbrjU), I built my own version of the smart mirror using reflective plexi glass a Raspberry Pi Zero and an Arduino.

The Arduino is attached to a USB hub along with a wifi dongle.  Also, wired to the Arduino is a temperature sensor and a motion sensor.  The temp sensor came in a kit and is super simple to get working with Arduino.  This will be used to gather information about the internal temp of the room.

The motion sensor is used to turn the monitor on after it goes to sleep.  The motion sensor is also easy to setup.

Both sensors communicate with the Pi via the serial console over USB.


text:
# WindowsUniversalFlyoutArrowControl
An example implementation of creating a flyout control with an arrow.

## Synopsis

This project shows how you can creat a flyout control that has an arrow pointing to the element that initiates the flyout.

## Motivation

There are many designs that call for a popup with an arrow indicator to present something to the user. The Universal Windows platform doesn't provide support for a flyout with an arrow so this project is one way to create this UI effect.

## License

MIT License


text:
# Tinkerbell Streams

[![Build Status](https://travis-ci.org/haxetink/tink_streams.svg?branch=master)](https://travis-ci.org/haxetink/tink_streams)
[![Gitter](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/haxetink/public)

This library provides immutable streams, which are vaguely similar to iterators but might more accurately be thought of as immutable asynchronous lazy lists. Progressing along a stream yields a new stream instead modifying the original. The data in a stream is generated *as needed*.

Because the world is a harsh place, we must discern "real" streams from "ideal" streams, where the former may yield errors, while the latter will not. To deal with this distinction, `tink_streams` makes relatively strong use of [GADTs](http://code.haxe.org/category/functional-programming/enum-gadt.html), a somewhat arcane feature of Haxe.

In a nutshell, the distinction is expressed like so:

```haxe
typedef RealStream<Item> = Stream<Item, Error>;
typedef IdealStream<Item> = Stream<Item, Noise>;
```

So a "real stream of items" is a "stream of items with errors", while an "ideal stream of items" is a "stream of items with nothing" (in tinkerbell `Noise` is used to express nothingness, because of the limitations `Void` exhibits). So let's have a look at what a stream looks like and how we can operate on it:

```haxe
abstract Stream<Item, Quality> {
  function forEach<Safety>(handle:Handler<Item, Safety>):Future<Conclusion<Item, Safety, Quality>>;
}

typedef Handler<Item, Safety> = Item->Future<Handled<Safety>>;

enum Handled<Safety> {
  BackOff:Handled<Safety>;
  Finish:Handled<Safety>;
  Resume:Handled<Safety>;
  Clog(e:Error):Handled<Error>;
}

enum Conclusion<Item, Safety, Quality> {
  Halted(rest:Stream<Item, Quality>):Conclusion<Item, Safety, Quality>;
  Clogged(error:Error, at:Stream<Item, Quality>):Conclusion<Item, Error, Quality>;
  Failed(error:Error):Conclusion<Item, Safety, Error>;
  Depleted:Conclusion<Item, Safety, Quality>;
}
```

Don't let this zoo of type parameters irritate you. They all have their place and we actually know two of them already: `Item` denotes the type of items that flow through the stream and `Quality` is what we use to draw the line between ideal and real streams.

There are many more functions defined on streams, but `forEach` is by far the most important one. As we see it accepts a handler for `Item` with a certain `Safety`. This is to allow us to differentiate ideal and real handlers (although we don't explicitly define them). A handler is a function that gets an item and then tells us how it has handled it. It can either `BackOff`, thus stopping iteration *before* that item, or `Finish` this stopping iteration *after* that item, it can `Resume` the iteration or - if it is a `Handler<Item, Error>` - it may `Clog`.

Iteration can be concluded for various reasons which are thus expressed in the `Conclusion` enum, which handles four cases:

- `Halted`: the handler stopped the iteration. The `rest` then represent the remaining stream. So if the handler returns `BackOff` the first item of the remaining stream will be the last item the handler treated, otherwise it's all the items that would have been passed to the handler, had it not stopped.
- `Clogged`: the handler raised an `error` and `at` is the remaining stream (including the item where the error was raised)
- `Failed`: the stream failed. Note that no remaining stream is given, because when streams fail, they end.
- `Depleted`: the whole stream was used up. Therefore this case also has no remaining stream.

If the stream is ideal (and thus `Quality` is not `Error`), then `Failed` is unexpected, if the handler is ideal (and thus `Safety` is not `Error`), then `Clogged` is unexpected.

license: Unlicense

gha_language: Haxe

gha_license_id: Unlicense


text:
---
title: All the files used by this document
category: usage
permalink: /FAQ-filesused
---

When you're sharing a document with someone else (perhaps as part of a
co-development cycle) it's as well to arrange that both correspondents
have the same set of auxiliary files, as well as the document in
question.  Your correspondent obviously needs the same set of files
(if you use the [`url`](https://ctan.org/pkg/url) package, she has to have [`url`](https://ctan.org/pkg/url)
too, for example).  But suppose you have a bug-free version of the
`shinynew` package but her copy is still the unstable
original; until you both realise what is happening, such a situation
can be very confusing.

The simplest solution is the LaTeX `\listfiles` command.  This
places a list of the files used and their version numbers in the log
file.  If you extract that list and transmit it with your file, it can
be used as a check-list in case that problems arise.

Note that `\listfiles` only registers things that are input by the
"standard" LaTeX mechanisms (`\documentclass`, `\usepackage`,
`\include`, `\includegraphics` and so on).
The `\input` command, as modified by LaTeX and used, with
LaTeX syntax, as:
```latex
  \input{mymacros}
```
records file details for `mymacros.tex`, but if you use TeX
primitive syntax for `\input`, as:
```latex
  \input mymacros
```
`mymacros.tex` _won't_ be recorded, and so won't listed by
`\listfiles` — you've bypassed the mechanism that records its use.

The [`snapshot`](https://ctan.org/pkg/snapshot) package helps the owner of a LaTeX document
obtain a list of the external dependencies of the document, in a form
that can be embedded at the top of the document.  The intended use of
the package is the creation of archival copies of documents, but it
has application in document exchange situations too.

The `bundledoc` system uses the [`snapshot`](https://ctan.org/pkg/snapshot) to produce an
archive (e.g., `tar.gz` or `zip`) of the files needed by your
document; it comes with configuration files for use with
TeX Live-`Unix` and `MiKTeX`.  It's plainly useful when
you're sending the first copy of a document.

The `mkjobtexmf` finds which files are used in a "job",
either via the `-recorder` option of TeX, or by using the
(Unix) command `strace` to keep an eye on what TeX is
doing.  The files thus found are copied (or linked) to a directory
which may then be saved for transmission or archiving.


text:
# wallbase-cc-downloader

A small python script to download top wallpapers from wallbase.cc.

This script is used to download the top safe, sketchy and nsfw wallpapers to a directory to be randomly rotated at random on my lubuntu desktop.

# Usage

Copy the wallpaper-download.sh, wallpaper-rotate.sh and download.py scripts into your bin directory.

    $ mkdir ~/tmp/
    $ git clone https://github.com/ngerakines/wallbase-cc-downloader.git
    $ cd wallbase-cc-downloader
    $ chmod +x *.sh
    $ mkdir ~/bin/
    $ cp *.sh *.py ~/bin/
    $ touch ~/.wallbase-cc-blacklist

Update the paths, username and password in the bash scripts.

Then update your crontab with the following:

    0 1 * * * /path/to/wallpaper-download.sh
    */5 * * * * export DISPLAY=:0 && /path/to/wallpaper-rotate.sh

And done. New wallpapers will be fetched once a day at 1:00 am. The desktop wallpaper will be rotated every 5 minutes.

Note: I included the top 60 NSFW wallpapers, but depending on your situation, you may want to remove it.

## Blacklist

You may come accross wallpapers that are rated highly but either aren't your style or don't look good on your desktop. Simply add the full file path to the blacklist file that is configured and it will be skipped on future downloads if you delete the file.

An example blacklist would look like

    $ cat ~/.wallbase-cc-blacklist
    /path/to/dl-wallpaper-01010101.jpg

repository: ngerakines/wallbase-cc-downloader

repo_name: ngerakines/wallbase-cc-downloader


text:
# robospider
[![license](https://img.shields.io/badge/license-MIT-blue.svg)]()

A command line spider for robot.txt files written in go, highly inspired from [Parsero](https://tools.kali.org/information-gathering/parsero).

## Installation
You can install using go __get__ command, this will download and build the project for you:
```
go get github.com/b4dnewz/robospider
```
Now, if you have `$GOPATH/bin` in your __PATH__ you can start using it by typing __robospider__.

---

## How does it work?
Once is called with a target domain it will read the `robots.txt` file of a web server and looks at the Disallow entries. The Disallow entries tell the search engines what directories or files hosted on a web server mustn't be indexed. This is the way the administrator have to not share sensitive or private information with the search engines.

The steps involved in the scan are:
1. It will try to locate and read the `robots.txt` file.
2. For every Disallow entry found it will check if is reachable.
3. All the interesting results will be grouped into an output file.

In next versions it will perform a search for found addresses on web search engines and gather results.

Also, it doesn't mean that the files or directories typed in the Dissallow entries will not be indexed by Bing, Google, Yahoo, etc. For this reason, __robospider__ is capable of searching in Bing to locate content indexed without the web administrator authorization. So in next versions __robospider__ will perform additional check using search engines results.

---

## Usage
The last argument __must__ be the domain or the url to scan.
```

   |  |
   \**/    Robospider v1.0.0
  o={}=o   by Filippo 'b4dnewz' Conti
 / /()\ \  codekraft-studio<EMAIL_ADDRESS>   \  /

Package usage: robospider [-proxy URL] [-output NAME] [DOMAIN]

  -output string
        the output file name Default: [domain].log
  -proxy string
        the full address of the proxy server to use: [address:port]

```
---

## Contributing

1. Create an issue and describe your idea
2. Fork the project (https://github.com/b4dnewz/robospider/fork)
3. Create your feature branch (`git checkout -b my-new-feature`)
4.  Publish the branch (`git push origin my-new-feature`)
6. Create a new Pull Request

repository: genez/robospider

repo_name: genez/robospider


text:
# Who's With Me?
An open source front end web development training project. For more information, visit https://code4liberty.wordpress.com/web/ Suggestions and contributions are appreciated.

## Work in progress

An open source candidate comparison tool developed for downticket candidates. Uses JSON to make it easier for people to reuse it for different candidates and issues. Fork it.

To test it yourself, visit: https://coders4liberty.github.io/whoWme/.


text:
# College Search and Offerings application
This application allows users to find what colleges are out there in order to narrow down there search based on a list of criteria we have built in to the application

## Getting Started
You will need to run npm install in terminal for all dependencies

### Prerequisites

Node.JS
mySQL

## Deployment
to run server type  node server.js

## Built With

JavaScript
SQL
Express
Node
randombytes
crypto
sequelize
body-parser
nlForm (second page javascript library)
jquery
data from data.gov
MVC Architecture

## Authors

**Steven Snyder,**
**Ben Gregory**

## License

This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details


text:
---
title: MuRho Inventory Management & Sales Management System - STARTER PACK A - SAAS WITH HARDWARE
permalink: /productivity-solutions-grant/solutionrepo/solution621
---

### Description

The MuRho Inventory Management & Sales Management System includes:
-	Store N Track (Inventory & Asset Management System)
-	Manufacture N Track (Inventory & Manufacturing Work In Progress Management System)
-	Sell N Track (Inventory & Sales Order Management System)
-	Order N Track (Inventory & Online B2B / Mobile Sales Order Management System)
-	Connect N Track (API connector to link to 3rd party Marketplace / Software System)

### Details of Solution

Click here to view details of solution.

### Eligibility Criteria

Applicants must meet the following eligibility criteria at the point of application:

a) must be registered in Singapore

b) purchase/lease of the IT solution or equipment or consultancy service must be used in Singapore

c) must not have:
- Made any payment to a supplier, vendor or third party in relation to the purchase/lease of the IT solution or equipment or consultancy service
- Signed any contract with a supplier, vendor or third party in relation to the purchase/lease of the IT solution or equipment or consultancy service

Please refer to 'Things to Note' for additional requirements.

### Mode of Payment
Direct Purchase

### Support Level
Up to 80% for SMEs

N.A. for non-SMEs

### Things to Note
Minimum 30% ordinary shares (ultimate individual ownership) held directly/indirectly by Singaporean/PR

### Contact Information
MuRho Pte Ltd
www.murho.com.sg
Email:sales@murho.com.sg
Tel:+65 6289 3802

Interested companies can get a quotation from the pre-approved vendor, before applying for the PSG through the Business Grant Portal (BGP).

repository: GuanweiSTO/govtech-gobusiness-main

repo_name: GuanweiSTO/govtech-gobusiness-main


text:
---
linkTitle: Overview
title: Brigade Overview
description: High-level view of Brigade.
section: intro
weight: 1
aliases:
  - /overview.md
  - /intro/overview.md
---

Brigade is an event-driven scripting tool that runs on Kubernetes. Here's what that means:

- Brigade is for running scriptable automated tasks in the cloud.
- Brigade does not require you to manage host servers.
- Brigade is particularly well suited for CI and CD workloads such as:
  - Automated testing
  - GitHub hook integration
  - Building artifacts and releases
  - Managing deployments
- Brigade ships with its own API server
  - Interactions occur through Brigade directly, via the `brig` CLI or an SDK
  - Operators managing a Brigade installation can still drop down to the K8s API to investigate Brigade resources.
  - The Brigade server is deployed and managed with Helm, thus hosting can occur on any stock Kubernetes system, from Azure to Minikube.
- Brigade handles authn/authz concerns
  - Third-party authentication options include GitHub's OAuth2 identity provider and OIDC-compliant solutions like Azure Active Directory and Google Identity Platform.
  - Administrators of the Brigade system have full control over authorization, including Service Account, Role and User management.
- Brigade uses familiar technologies to make handling events easy:
  - Project developers write scripts in basic JavaScript or TypeScript (no need to learn Node.js)
  - Utilize OCI/Docker images to handle event workloads
  - Project configuration is written in YAML and easily persisted via your preferred VCS

Brigade is designed for teams. It is not a SaaS, nor does it require a legion of domain experts to configure and run it. Instead, it should be easy to install, configure, and maintain.

repository: brigadecore/brigade

repo_name: brigadecore/brigade


text:
## Research and Publications ##

The Securing Critical Projects working group encourages the creation, discussion, and dissemination of applicable research. Presentations and discussions of research are welcome in the working group.

A sample of Research and Publications considered by the working group can be found [here](https://github.com/Amir-Montazery/wg-securing-critical-projects/blob/main/Research-and-Publications/identifying-critical-projects.md).

### Notes and Agendas

Meeting Notes and Agendas are available on [Google Drive](https://docs.google.com/document/d/1MIXxadtWsaROpFcJnBtYnQPoyzTCIDhd0IGV8PIV0mQ/edit). (Join the group to edit.)

Meeting Recordings are available on Youtube at: https://www.youtube.com/playlist?list=PLVl2hFL_zAh-cAfx6y4k-fODfbHeQzb_O.


text:
# WPC: WordPress in Containers

This tool is used to add shell scripts and configuration files that allow running WordPress in Docker containers for development (this setup is *not* suitable for production deployments).

If the repository you're using already has `wpc` you'll find the following files:

- `script/server` - run WordPress in a container
  - WordPress will be running on http://localhost
  - MailCatcher will be running on http://localhost:1080
  - Beanstalk Console will be running on http://localhost:2080
- `script/setup` - install WordPress
  - the default user is `admin` with password `admin`
  - will also install [whippet](https://github.com/dxw/whippet) dependencies
  - setup configuration files are in the `setup/` directory
- `script/update` - run any updates after checking out the latest version
  - this will update whippet dependencies to the latest versions
- `script/console` - open a `/bin/sh` console inside the main container
- `script/bootstrap` - update dependencies (this is called by `script/setup` and `script/update`)
- `bin/wp` - run [wp-cli](https://wp-cli.org/)
- `docker-compose.yml` - the Docker Compose configuration for running the development environment
- `config/server.php` - configuration that would normally go in `wp-config.php` (checked into the repository - used for the development envirnoment)
- `config/server-local.php` - configuration that would normally go in `wp-config.php` (not checked into the repository)
- `setup/internal.sh` - this is run by `script/setup`, it runs the wp-cli commands to install WordPress

## Requirements

Docker & Docker Compose.

macOS:

- [Docker for Mac](https://docs.docker.com/docker-for-mac/install/) includes Docker Compose

## Installing `wpc` onto your computer

### Method 1: With Docker

Add this alias to your shell's configuration:

```
alias wpc='docker run -ti --rm -v `pwd`:/app thedxw/wpc'
```

### Method 2: With Go

```
go get github.com/dxw/wpc
```

## Installing `wpc` into a WordPress project

### Step 1: Run `wpc`

Run `wpc name-of-project` or `wpc name-of-project --multisite` in the root of the project.

`--multisite` will add the appropriate configuration options for running the site as multisite.

### Step 2: Configuration

Edit `setup/internal.sh` to enable plugins and themes or set the name of the site, or anything else you can do with `wp-cli`. (`setup/external.sh` also exists, if you need to run commands outside of the container).

WXR files containing WordPress content can be placed in the project's `setup/content/` folder. This content will be imported on running the project for the first time.

## Running WordPress in a `wpc` project

Running it for the first time:

```
script/server
# Wait for the server to be running
script/setup
```

Running the project the next time:

```
script/server
```

Running the project after checking out the latest version:

```
script/server
# Wait for the server to be running
script/update
```

You can also use `script/server -d` to start the containers in detached mode (i.e. without any output to your terminal window).

- WordPress: http://localhost
- MailCatcher: http://localhost:1080
- Beanstalk Console: http://localhost:2080
- `/bin/sh` console running on the WordPress container: `script/console`
- MySQL: `bin/wp db cli`

## Common issues

All the ports that docker will be listening on (80, 1080, 2080, 3066 & 11300) need to be available, so if you've got local processes running on them, that will stop the containers starting up, usually with an `EADDRINUSE` error.

Things that might be running on port 80: apache (stop with `sudo apachectl stop`), any other local server (e.g. XAMPP)

Things that might be running on port 3306: `mysql` (stop with `mysql.server stop`)

## WordPress versions

When the image is built, a copy of the latest version of WordPress is downloaded.

When running the image, it will check for updates before starting Apache. However it can be configured to download other versions of WordPress via the `WORDPRESS_VERSION` environment variable.

Example `docker-compose.yml` file (the last two lines should be added - the rest are there by default):

```
  wordpress:
    image: thedxw/wpc-wordpress
    ports:
      - "80:80"
    links:
      - mysql
      - mailcatcher
      - beanstalk
    volumes:
      - .:/usr/src/app
      - ./wp-content:/var/www/html/wp-content
    environment:
      WORDPRESS_VERSION: 4.7
```

## Development

Templates live in `templates/` and can be compiled into `raw_templates.go` by running `go generate`.

## Licence

[MIT](COPYING.md)

repository: WProbot/wpc

repo_name: WProbot/wpc


text:
---
layout: post
title: 'Ubuntu on MacBook Pro'
---

This post aims to collate all of the steps I gathered and followed from around the inter-web to install Ubuntu 11.10 on my MacBook Pro 8,1 and to get the wireless working.

__Installing Ubuntu via USB stick__
I followed the instructions detailed here - www.omgubuntu.co.uk/2011/10/dual-boot-os-ubuntu. However, I ran into issues getting rEFIt to work. The installation would be successful but on restart, I wasn't able to see the rEFIt menu. Googling around, I stumbled upon this command -

`/efi/refit/enable-always.sh`

which will force the rEFIt menu on restart. My experiences with this setup has been random. I sometimes can see the rEFIt menu on restart even when I did not run this command before shutting down the previous time. However, just to be safe, I think it is better to run this command before restarting. A smarter way to do this would be to add the command in the file

`/etc/rc.shutdown.local</pre>`

You may need to create the file if it is not present already. This script makes sure the commands in the file are executed by the time the machine is up after restart.

__Creating the USB stick__
I used the following command to create the bootable USB stick -

`sudo dd if=ubuntu-11.10-desktop-amd64+mac.iso of=/dev/sdXXX`

__Setting up the wireless__
Lot of googling finally pointed me to these three simple commands that got the wireless to work

    sudo add-apt-repository ppa:mpodroid/mactel
    sudo apt-get update
    sudo apt-get install linux-backports-modules-cw-3.2-3.0.0-14-generic firmware-b43-installer


text:
# DWriteFontProxy #

This directory contains Windows DirectWrite classes
that runs in the renderer process.

This README can be viewed in formatted form [here](https://chromium.googlesource.com/chromium/src/+/main/content/child/dwrite_font_proxy/README.md).

The `DWriteFontCollectionProxy` is a single-instance object.
It creates an instance of `DWriteFontFamilyProxy` for each font family
by making mojo calls to `DWriteFontProxyImpl` in the browser process.

Please see the following diagram for the call flows.

![Call flow](blink_dwrite_call_flow.dot.png)

repository: chromium/chromium

repo_name: chromium/chromium


text:
This contains troubleshooting troubleshooting Game Servers related to thundernetes

## **Category: Game Servers**

### **How to**
* [How can I find the public IP Address from inside a Game Server?](./HowCanIFindThePublicIPAddress.md)
* [Help! My Game server is stuck!](./MyGameServerIsStuck.md)

* [My Game Servre is stuck. What can I do?](./MyGameServerIsStuck.md)
* [How can I run my game server pods in a non-default namespace?](./HowCanIRunMyGameServerPodInANonDefaultNamespace.md)

repository: Triplelexx/thundernetes

repo_name: Triplelexx/thundernetes


text:
---
name: Feature Request 💡
about: Suggest a new feature for Twiggy
---

## 💡 Feature Description

Explanation of the requested feature. What use case does it solve?

#### 💻 Example Usage

Include a strawman example of how a user might use this new feature, and what
the output would look like.

#### 🙌 Are you interested in implementing this feature?

Add an "X" to one of the following:

* [ ] Yes
* [ ] Yes if I had a mentor to help me
* [ ] No

repository: rustwasm/twiggy

gha_language: Rust

repo_name: rustwasm/twiggy


text:
### [CVE-2021-22872](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-22872)
![](https://img.shields.io/static/v1?label=Product&message=https%3A%2F%2Fgithub.com%2Frevive-adserver%2Frevive-adserver&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=Cross-site%20Scripting%20(XSS)%20-%20Reflected%20(CWE-79)&color=brighgreen)

### Description

Revive Adserver before 5.1.0 is vulnerable to a reflected cross-site scripting (XSS) vulnerability via the publicly accessible afr.php delivery script. While this issue was previously addressed in modern browsers as CVE-2020-8115, some older browsers (e.g., IE10) that do not automatically URL encode parameters were still vulnerable.

### POC

#### Reference
- http://packetstormsecurity.com/files/161070/Revive-Adserver-5.0.5-Cross-Site-Scripting-Open-Redirect.html
- https://hackerone.com/reports/986365

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

repository: trickest/cve

repo_name: trickest/cve


text:
# Change Log

All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## [1.13.5](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.13.4<EMAIL_ADDRESS>(2023-01-04)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.13.4](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.13.3<EMAIL_ADDRESS>(2022-12-07)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.13.3](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.13.2<EMAIL_ADDRESS>(2022-12-02)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.13.2](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.13.1<EMAIL_ADDRESS>(2022-11-21)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.13.1](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.13.0<EMAIL_ADDRESS>(2022-07-20)

**Note:** Version bump only for package @contentful/gatsby-preview

# [1.13.0](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.8<EMAIL_ADDRESS>(2022-07-19)

### Features

- **gatsby:** use new sdk.entry.save() api in Previews instead of doing slow/hacky loop to check last save time ([#1488](https://github.com/contentful/apps/issues/1488)) ([26f84b8](https://github.com/contentful/apps/commit/26f84b866ebc0161aff3f6bbfdb59b4ffc7db6c5))

## [1.12.8](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.7<EMAIL_ADDRESS>(2022-07-18)

### Bug Fixes

- **deps:** bump @contentful/app-sdk from 4.4.0 to 4.9.0 ([#1478](https://github.com/contentful/apps/issues/1478)) ([02b8dc2](https://github.com/contentful/apps/commit/02b8dc2396ff48c98052b0203c7d13197ecf6310))

## [1.12.7](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.6<EMAIL_ADDRESS>(2022-06-03)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.6](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.5<EMAIL_ADDRESS>(2022-06-01)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.5](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.4<EMAIL_ADDRESS>(2022-05-12)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.4](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.3<EMAIL_ADDRESS>(2022-02-28)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.3](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.2<EMAIL_ADDRESS>(2022-02-17)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.2](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.1<EMAIL_ADDRESS>(2022-02-15)

**Note:** Version bump only for package @contentful/gatsby-preview

## [1.12.1](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.12.0<EMAIL_ADDRESS>(2022-02-03)

### Bug Fixes

- **Gatsby:** Check the updated at time repeatedly to wait for a save to happen ([#728](https://github.com/contentful/apps/issues/728)) ([68ee680](https://github.com/contentful/apps/commit/68ee68074a01bae3cbd71f85b3c8d81f44500750))

# [1.12.0](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.11.1<EMAIL_ADDRESS>(2022-01-31)

### Features

- Add Gatsby Cloud (Content Sync) eager redirects support ([#722](https://github.com/contentful/apps/issues/722)) ([641a0c9](https://github.com/contentful/apps/commit/641a0c94d13bd14c2e841e820f6441aab11e0da9))

## [1.11.1](https://github.com/contentful/apps/compare/@contentful/gatsby-preview@1.11.0<EMAIL_ADDRESS>(2022-01-22)

**Note:** Version bump only for package @contentful/gatsby-preview

# 1.11.0 (2022-01-14)

### Bug Fixes

- [] preview button incorrectly hidden ([#569](https://github.com/contentful/apps/issues/569)) ([a665d6a](https://github.com/contentful/apps/commit/a665d6a72e3c05d272e7543fd7b2999ddbdf4c65))
- add check for sys object on select maps ([#228](https://github.com/contentful/apps/issues/228)) ([d6b2a45](https://github.com/contentful/apps/commit/d6b2a45e6111419a0ac0e0fd03c0dff572a84535))
- bump gatsby version ([#227](https://github.com/contentful/apps/issues/227)) ([fa6ae37](https://github.com/contentful/apps/commit/fa6ae370881b443e1aa4e5c0ff0528788f88d8ff))
- fail config persistence if preview webhook url is not valid ([#570](https://github.com/contentful/apps/issues/570)) ([f6e7ec6](https://github.com/contentful/apps/commit/f6e7ec62cb1d0898771265d37d08b883582468a2))
- **gatsby:** display warning when there are no content types ([#72](https://github.com/contentful/apps/issues/72)) ([0c47e7f](https://github.com/contentful/apps/commit/0c47e7ffec716c10f0657783be8984d46fb427fe))
- move react to peer dependency & unpin dependencies ([#475](https://github.com/contentful/apps/issues/475)) ([981e177](https://github.com/contentful/apps/commit/981e177092fafdcce211822277d3ee0dad7ae689))
- remove previewWebhookUrl references and use webhookUrl instead ([#576](https://github.com/contentful/apps/issues/576)) ([9b84aed](https://github.com/contentful/apps/commit/9b84aed7ad104eba5bf8655e8706bd23db8d7c16))
- remove unused dependencies ([#523](https://github.com/contentful/apps/issues/523)) ([a1af1dd](https://github.com/contentful/apps/commit/a1af1dd07726c1119e0c16fcbdfb3bea4f88dae2))
- retrieve all content types from space ([#230](https://github.com/contentful/apps/issues/230)) ([ad4df15](https://github.com/contentful/apps/commit/ad4df15bbdc0e787b4afd7055916166613f0df24))
- revert back to original gatsby app ([#217](https://github.com/contentful/apps/issues/217)) ([364a62d](https://github.com/contentful/apps/commit/364a62d77ad69464ae3bd92711144271ad9e488d))

### Features

- [] Add Gatsby Cloud Content Sync support (Next-gen Preview) ([#543](https://github.com/contentful/apps/issues/543)) ([9ca8ad8](https://github.com/contentful/apps/commit/9ca8ad8e4196f5088cbb22aea600cb0c7ba25dcd)), closes [#6](https://github.com/contentful/apps/issues/6) [#11](https://github.com/contentful/apps/issues/11)
- [] build gatsby with react-scripts ([#293](https://github.com/contentful/apps/issues/293)) ([25882c9](https://github.com/contentful/apps/commit/25882c91c809f6a8d304de36c122614140586881))
- [] don't overwrite existing editor interface config when configuring gatsby ([#418](https://github.com/contentful/apps/issues/418)) ([f2e185d](https://github.com/contentful/apps/commit/f2e185d65c19e9260f448c65ceed83bc5b3ebe93))
- [EXT-2717] use app hosting for gatsby ([#361](https://github.com/contentful/apps/issues/361)) ([9f438f0](https://github.com/contentful/apps/commit/9f438f06db4a057767e80352e7f1b68e6cfd5512))
- [EXT-2722] use contentful hosting for image focal point app ([#238](https://github.com/contentful/apps/issues/238)) ([11b57ae](https://github.com/contentful/apps/commit/11b57ae3e4fb5dd376544d89056430b71883517c))
- [EXT-3415] move all package names to [@contentful](https://github.com/contentful) ([#665](https://github.com/contentful/apps/issues/665)) ([9bd7534](https://github.com/contentful/apps/commit/9bd75340860e59f25b4eed900a832a482508f603))
- define_entry_slugs ([e933688](https://github.com/contentful/apps/commit/e933688293fcb7f2a7277dac628b2374f6b21672))
- improve empty states of assignments [EXT-1960] ([#95](https://github.com/contentful/apps/issues/95)) ([642d5ee](https://github.com/contentful/apps/commit/642d5ee11664f87acb9797e39c07e1ceabb588c6))
- optionally define entry slugs ([#219](https://github.com/contentful/apps/issues/219)) ([3e1f5b8](https://github.com/contentful/apps/commit/3e1f5b8ac8b32b222bb9671d2589d0f221ce5038))
- update to the latest forma and new tokens ([#336](https://github.com/contentful/apps/issues/336)) ([d4cba00](https://github.com/contentful/apps/commit/d4cba009066b590b790b0d32bb1afbcf699d3bee))
- use App SDK v4 ([#528](https://github.com/contentful/apps/issues/528)) ([5fb634a](https://github.com/contentful/apps/commit/5fb634a0679de8af4ada0de3d571a8a5e5564090))

### Reverts

- Revert "start on slug fields" ([c69bfba](https://github.com/contentful/apps/commit/c69bfba254b5718ae63c3864480799104ddf8061))

## [1.10.11](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2022-01-14)

**Note:** Version bump only for package gatsby-preview

## [1.10.10](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2022-01-10)

**Note:** Version bump only for package gatsby-preview

## [1.10.9](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-18)

**Note:** Version bump only for package gatsby-preview

## [1.10.8](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-18)

**Note:** Version bump only for package gatsby-preview

## [1.10.7](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-18)

**Note:** Version bump only for package gatsby-preview

## [1.10.6](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-18)

**Note:** Version bump only for package gatsby-preview

## [1.10.5](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-18)

**Note:** Version bump only for package gatsby-preview

## [1.10.4](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-02)

### Bug Fixes

- remove previewWebhookUrl references and use webhookUrl instead ([#576](https://github.com/contentful/apps/issues/576)) ([9b84aed](https://github.com/contentful/apps/commit/9b84aed7ad104eba5bf8655e8706bd23db8d7c16))

## [1.10.3](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-11-02)

### Bug Fixes

- [] preview button incorrectly hidden ([#569](https://github.com/contentful/apps/issues/569)) ([a665d6a](https://github.com/contentful/apps/commit/a665d6a72e3c05d272e7543fd7b2999ddbdf4c65))

## [1.10.2](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-10-29)

### Bug Fixes

- fail config persistence if preview webhook url is not valid ([#570](https://github.com/contentful/apps/issues/570)) ([f6e7ec6](https://github.com/contentful/apps/commit/f6e7ec62cb1d0898771265d37d08b883582468a2))

## [1.10.1](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-10-28)

**Note:** Version bump only for package gatsby-preview

# [1.10.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-10-27)

### Features

- [] Add Gatsby Cloud Content Sync support (Next-gen Preview) ([#543](https://github.com/contentful/apps/issues/543)) ([9ca8ad8](https://github.com/contentful/apps/commit/9ca8ad8e4196f5088cbb22aea600cb0c7ba25dcd)), closes [#6](https://github.com/contentful/apps/issues/6) [#11](https://github.com/contentful/apps/issues/11)

# [1.9.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-10-13)

### Features

- use App SDK v4 ([#528](https://github.com/contentful/apps/issues/528)) ([5fb634a](https://github.com/contentful/apps/commit/5fb634a0679de8af4ada0de3d571a8a5e5564090))

## [1.8.3](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-10-07)

### Bug Fixes

- remove unused dependencies ([#523](https://github.com/contentful/apps/issues/523)) ([a1af1dd](https://github.com/contentful/apps/commit/a1af1dd07726c1119e0c16fcbdfb3bea4f88dae2))

## [1.8.2](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-09-16)

### Bug Fixes

- move react to peer dependency & unpin dependencies ([#475](https://github.com/contentful/apps/issues/475)) ([981e177](https://github.com/contentful/apps/commit/981e177092fafdcce211822277d3ee0dad7ae689))

## [1.8.1](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-09-10)

**Note:** Version bump only for package gatsby-preview

# [1.8.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-08-24)

### Features

- [] don't overwrite existing editor interface config when configuring gatsby ([#418](https://github.com/contentful/apps/issues/418)) ([f2e185d](https://github.com/contentful/apps/commit/f2e185d65c19e9260f448c65ceed83bc5b3ebe93))

# [1.7.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-08-16)

### Features

- update to the latest forma and new tokens ([#336](https://github.com/contentful/apps/issues/336)) ([d4cba00](https://github.com/contentful/apps/commit/d4cba009066b590b790b0d32bb1afbcf699d3bee))

## [1.6.1](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-08-10)

**Note:** Version bump only for package gatsby-preview

# [1.6.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-08-06)

### Features

- [EXT-2717] use app hosting for gatsby ([#361](https://github.com/contentful/apps/issues/361)) ([9f438f0](https://github.com/contentful/apps/commit/9f438f06db4a057767e80352e7f1b68e6cfd5512))

# [1.5.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-06-18)

### Features

- [] build gatsby with react-scripts ([#293](https://github.com/contentful/apps/issues/293)) ([25882c9](https://github.com/contentful/apps/commit/25882c91c809f6a8d304de36c122614140586881))

# [1.4.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-05-05)

### Features

- [EXT-2722] use contentful hosting for image focal point app ([#238](https://github.com/contentful/apps/issues/238)) ([11b57ae](https://github.com/contentful/apps/commit/11b57ae3e4fb5dd376544d89056430b71883517c))

## [1.3.2](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-04-26)

### Bug Fixes

- retrieve all content types from space ([#230](https://github.com/contentful/apps/issues/230)) ([ad4df15](https://github.com/contentful/apps/commit/ad4df15bbdc0e787b4afd7055916166613f0df24))

## [1.3.1](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-04-23)

### Bug Fixes

- add check for sys object on select maps ([#228](https://github.com/contentful/apps/issues/228)) ([d6b2a45](https://github.com/contentful/apps/commit/d6b2a45e6111419a0ac0e0fd03c0dff572a84535))

# [1.3.0](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-04-22)

### Bug Fixes

- bump gatsby version ([#227](https://github.com/contentful/apps/issues/227)) ([fa6ae37](https://github.com/contentful/apps/commit/fa6ae370881b443e1aa4e5c0ff0528788f88d8ff))

### Features

- optionally define entry slugs ([#219](https://github.com/contentful/apps/issues/219)) ([3e1f5b8](https://github.com/contentful/apps/commit/3e1f5b8ac8b32b222bb9671d2589d0f221ce5038))

## [1.1.2](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-02-16)

**Note:** Version bump only for package gatsby-preview

## [1.1.1](https://github.com/contentful/apps/compare/gatsby-preview<EMAIL_ADDRESS>(2021-01-26)

**Note:** Version bump only for package gatsby-preview

# 1.1.0 (2021-01-14)

### Bug Fixes

- **gatsby:** display warning when there are no content types ([#72](https://github.com/contentful/apps/issues/72)) ([0c47e7f](https://github.com/contentful/apps/commit/0c47e7ffec716c10f0657783be8984d46fb427fe))

### Features

- improve empty states of assignments [EXT-1960] ([#95](https://github.com/contentful/apps/issues/95)) ([642d5ee](https://github.com/contentful/apps/commit/642d5ee11664f87acb9797e39c07e1ceabb588c6))

repository: contentful/apps

repo_name: contentful/apps


text:
#The hauen-finding art, or The vvay to find any hauen or place at sea, by the latitude and variation. Lately published in the Dutch, French, and Latine tongues, by commandement of the right honourable Count Mauritz of Nassau, Lord high Admiral of the vnited Prouinces of the Low countries, enioyning all seamen that take charge of ships vnder his iurisdiction, to make diligent obseruation, in all their voyages, according to the directions prescribed herein: and now translated into English, for the common benefite of the seamen of England Havenvending. English#

##Stevin, Simon, 1548-1620.##
The hauen-finding art, or The vvay to find any hauen or place at sea, by the latitude and variation. Lately published in the Dutch, French, and Latine tongues, by commandement of the right honourable Count Mauritz of Nassau, Lord high Admiral of the vnited Prouinces of the Low countries, enioyning all seamen that take charge of ships vnder his iurisdiction, to make diligent obseruation, in all their voyages, according to the directions prescribed herein: and now translated into English, for the common benefite of the seamen of England
Havenvending. English
Stevin, Simon, 1548-1620.

##General Summary##

**Links**

[TCP catalogue](http://www.ota.ox.ac.uk/tcp/)  •
[HTML](http://tei.it.ox.ac.uk/tcp/Texts-HTML/free/A12/A12971.html)  •
[EPUB](http://tei.it.ox.ac.uk/tcp/Texts-EPUB/free/A12/A12971.epub) •
[Page images (Historical Texts)](https://data.historicaltexts.jisc.ac.uk/view?pubId=eebo-99853014e&pageId=eebo-99853014e-18373-1)

**Availability**

This keyboarded and encoded edition of the
	       work described above is co-owned by the institutions
	       providing financial support to the Early English Books
	       Online Text Creation Partnership. This Phase I text is
	       available for reuse, according to the terms of Creative
	       Commons 0 1.0 Universal. The text can be copied,
	       modified, distributed and performed, even for
	       commercial purposes, all without asking permission.

**Major revisions**

1. __2004-10__ __TCP__ *Assigned for keying and markup*
1. __2004-11__ __Apex CoVantage__ *Keyed and coded from ProQuest page images*
1. __2005-01__ __Judith Siefring__ *Sampled and proofread*
1. __2005-01__ __Judith Siefring__ *Text and markup reviewed and edited*
1. __2005-04__ __pfs__ *Batch review (QC) and XML conversion*

##Content Summary##

#####Front#####

1. TO THE RIGHT Honorable Charles Earle of Notingham, Baron Howard of Effingham, knight of the noble Order of the Garter, Lord high Admiral of England, Ireland, Wales, &c. And her Maiesties Lieutenant, and Captaine general ouer all her subiects, leuied in the South parts of this Realme, &c.

1. TO THE WORSHIPfull M. Richard Poulter the Maister, and brotherhood of Trinitie house, and to all English Mariners and sea-men in generall that loue the perfection of their owne profession, health and happines.

#####Body#####

1. ❧ The hauen-finding Art, Or The way to finde any Hauen or place appoynted at sea.

    _ How any Hauen or place at sea may be found, the latitude and variation of the same place only being knowen.

    _ A declaration of the former Table or view of variations.

      * The first definition.

      * The second definition.

      * The third definition.

      * The fourth definition.

    _ How the North point, and the variation may be found.

**Types of content**

  * There are 18 **verse** lines!
  * Oh, Mr. Jourdain, there is **prose** in there!

There are 1 **ommitted** fragments!
 @__reason__ (1) : foreign (1)

**Character listing**

|Text|string(s)|codepoint(s)|
|---|---|---|
|Latin-1 Supplement|¶ |182 160|
|Combining             Diacritical Marks|̄|772|
|Dingbats|❧|10087|
|CJKSymbolsandPunctuation|〈〉|12296 12297|

##Tag Usage Summary##

###Header Tag Usage###

|No|element name|occ|attributes|
|---|---|---|---|
|1.|__author__|3||
|2.|__availability__|1||
|3.|__biblFull__|1||
|4.|__change__|5||
|5.|__date__|8| @__when__ (1) : 2005-10 (1)|
|6.|__edition__|1||
|7.|__editionStmt__|1||
|8.|__editorialDecl__|1||
|9.|__extent__|2||
|10.|__idno__|6| @__type__ (6) : DLPS (1), STC (2), EEBO-CITATION (1), PROQUEST (1), VID (1)|
|11.|__keywords__|1| @__scheme__ (1) : http://authorities.loc.gov/ (1)|
|12.|__label__|5||
|13.|__langUsage__|1||
|14.|__language__|1| @__ident__ (1) : eng (1)|
|15.|__listPrefixDef__|1||
|16.|__note__|8||
|17.|__notesStmt__|2||
|18.|__p__|11||
|19.|__prefixDef__|2| @__ident__ (2) : tcp (1), char (1)  •  @__matchPattern__ (2) : ([0-9\-]+):([0-9IVX]+) (1), (.+) (1)  •  @__replacementPattern__ (2) : http://eebo.chadwyck.com/downloadtiff?vid=$1&page=$2 (1), https://raw.githubusercontent.com/textcreationpartnership/Texts/master/tcpchars.xml#$1 (1)|
|20.|__projectDesc__|1||
|21.|__pubPlace__|2||
|22.|__publicationStmt__|2||
|23.|__publisher__|2||
|24.|__ref__|2| @__target__ (2) : https://creativecommons.org/publicdomain/zero/1.0/ (1), http://www.textcreationpartnership.org/docs/. (1)|
|25.|__seriesStmt__|1||
|26.|__sourceDesc__|1||
|27.|__term__|2||
|28.|__textClass__|1||
|29.|__title__|5||
|30.|__titleStmt__|2||

###Text Tag Usage###

|No|element name|occ|attributes|
|---|---|---|---|
|1.|__cell__|360| @__cols__ (8) : 2 (8)  •  @__rows__ (12) : 12 (1), 7 (2), 5 (1), 9 (2), 6 (2), 3 (1), 4 (1), 2 (1), 16 (1)|
|2.|__closer__|2||
|3.|__desc__|1||
|4.|__div__|11| @__type__ (11) : title_page (1), dedication (2), text (1), part (3), definition (4)  •  @__n__ (4) : 1 (1), 2 (1), 3 (1), 4 (1)|
|5.|__figure__|3||
|6.|__g__|295| @__ref__ (295) : char:EOLhyphen (262), char:leaf (2), char:cmbAbbrStroke (31)|
|7.|__gap__|1| @__reason__ (1) : foreign (1)|
|8.|__head__|11||
|9.|__hi__|170||
|10.|__item__|6||
|11.|__l__|18||
|12.|__list__|1||
|13.|__p__|45||
|14.|__pb__|38| @__facs__ (38) : tcp:18373:1 (2), tcp:18373:2 (2), tcp:18373:3 (2), tcp:18373:4 (2), tcp:18373:5 (2), tcp:18373:6 (2), tcp:18373:7 (2), tcp:18373:8 (2), tcp:18373:9 (2), tcp:18373:10 (2), tcp:18373:11 (2), tcp:18373:12 (2), tcp:18373:13 (2), tcp:18373:14 (2), tcp:18373:15 (2), tcp:18373:16 (2), tcp:18373:17 (1), tcp:18373:18 (2), tcp:18373:20 (1), tcp:18373:22 (2)  •  @__rendition__ (1) : simple:additions (1)  •  @__n__ (21) : 1 (1), 2 (1), 3 (1), 4 (1), 5 (1), 6 (1), 7 (1), 8 (1), 9 (1), 10 (1), 11 (1), 12 (1), 13 (1), 14 (1), 15 (1), 16 (1), 18 (1), 19 (1), 23 (1), 26 (1), 27 (1)|
|15.|__row__|49||
|16.|__seg__|3| @__rend__ (3) : decorInit (3)|
|17.|__signed__|2||
|18.|__table__|1||
|19.|__trailer__|1||