For the fig - swirl : Melt butter over medium heat in a saucepan . Add brown sugar and stir to dissolve : Halve all
of the figs and toss in the saucepan with water and lemon juice . Cook over medium heat , stirring frequently until
you have a chunky jammy mixture . Add salt with one or two stirs , set aside and let cool completely.
Ice cream In a small pot over medium heat , combine mulk , and granulated sugar until sugar is completely
dissolved and the milk is just barely lukewarm . Whisk in the egg yolls . Set mixture in the fridge and wait until the
fig mixture is cooled.
Using an ice cream machine , pour liquids into the frozen basin and process according to manufacturer
instructions ,le , let spin and thicken for 20 minutes before adding mascarpone ,fig jam mixture , and the nuts .
Continue to process for +/- 10 minutes . Pour semi - frozen mixture into a pyrex dish or glass tupperware . Freeze for
at least two hours before serving .


When it comes to Margin, Border and Padding the best way to differentiate them is to simply use what is called the CSS box model, it is a common term used in web development to represent elements and their respective Padding, Border and Margin on a page.
In the image above you can see a screenshot of the box model with different colored sections representing the different attributes e.g Padding, Border, Margin.
Now imagine this box in a real life context, let's say you sold some kind of item online, this item could be anything, an old laptop for example, and you have to ship it to the buyer, obviously you can't just send the laptop as is, otherwise it would get damaged.
So you get some foam and/or bubble wrap ("The Padding") and wrap the laptop up with it to protect it, then you get a cardboard box to actually contain the item and the Padding (This is "The Border"), and finally you have the distance of everything outside of the box (This would be "The Margin")


Please sign up or log in to begin the quiz:
Sign Up
Login
Quiz
Begin!
Back
Next
Take Again!
Sign Up
First Name
Last Name
Email
Password
Password Confirmation
Submit
Log In
Email
Password
Submit


--- layout: default ---
{{ project.description }}
Digikrit is a software development company with vision to do useful digital creation and innovation.
Provide consulting on emerging technologies, also developing software products & open source projects.
Focus on app development, big data technologies, scalable architectures and data visualization.
Currently working on various open source projects listed above & ejabberd based chat products.
{{ site.hero.hero_description }}


When this option is checked, you have the possibility to ensure that builds of this project only occur on a certain agent, or set of agents.
For example, if your project should only be built on a certain operating system, or on machines that have a certain set of tools installed, or even one specific machine, you can restrict this project to only execute on agents that that meet those criteria.
The help text for the Label Expression field, shown when this option is checked, provides more detailed information on how to specify agent criteria.


---
layout: talk_reveal3
title: Inferring epidemic parameters from phylogenetic clustering
venue: Fred Hutch
event: Comp Bio Faculty Seminar
author: Trevor Bedford
draft: true
---
Trevor Bedford (@trvrb)
$P(c \, | \, R_0, \omega) = \frac{\Gamma(\omega c + c - 1)}{\Gamma(\omega c) \Gamma(c + 1)} \frac{(R_0/\omega)^{c-1}}{(1+R_0/\omega)^{\omega c + c - 1}}$ Transmission chains: $\mathbf{C} = (c_1, \ldots, c_K)$ Sequence clusters: $\mathbf{S} = (s_1, \ldots, s_K)$ Binomial sampling: $P(s_i \, | \, c_i, \psi) = \binom{c_i}{s_i} \psi^s_i (1-\psi)^{c_i-s_i}$ Full model: $P(\theta \, | \, M, \mathbf{S}) \propto
P(\mathbf{S} \, | \, \mathbf{C}, \psi) \;
P(M \, | \, N, \rho) \;
P(\mathbf{C}, N \, | \, R_0, \omega, k) \;
P(\mathbf{C}, R_0, \omega, \rho, \psi)$
with Nathan Grubaugh, Kristian Andersen, Jason Ladner, Gustavo Palacios, Sharon Isern, Oli Pybus,
Moritz Kraemer, Gytis Dudas, Amanda Tan, Karthik Gangavarapu, Michael Wiley, Stephen White,
Julien Thézé, Scott Michael, Leah Gillis, Pardis Sabeti, and many others
with Gytis Dudas, Luiz Max Carvalho and Andrew Rambaut
{{ page.title }}
{{ page.date | date: "%-d %b %Y" }}
{{ page.event }}
{{ page.venue }}
$R_0$
Infer $R_0$ from exponential growth rate
Sub-critical outbreaks and stuttering chains
Distribution of total outbreak size
Generative model
Monte Carlo sampling and Approximate Bayesian Computation
Local spread of Zika in Florida
Outbreak of locally-acquired infections focused in Miami-Dade county
Phylogeny shows a surprising degree of clustering
Flow of infected travelers greatest from Caribbean
Clustering suggests fewer, longer transmission chains and higher R0
Extrapolate R0 to predict introduction counts driving outbreak
Epidemiology of MERS-CoV in the Arabian Penninsula
Middle East respiratory syndrome coronavirus (MERS-CoV)
Concluded $R_0$ frequently >1 and three zoonotic introductions were responsible for 464 of 681 infections


What's my weather?
Important: This code uses OSMF Nominatim, which is governed by this
usage policy.
Look Up Location


genome chloroplast Plant aureum genes Biology gene genomes Fig species plants sequences ycf Araceae sequence Epipremnum repeats Life Sciences protein-coding {border-style complete SSRs plant px;} regions #ffffff;} DNA analysis Table Genomics phylogenetic ycf, region rps, Genome Science land rps (bp) Alismatales Analysis Cell Chloroplast Genetics Mol Shaanxi aureum. codon data evolution plastid similar sites Colocasia LSC codons comparative genome. higher members px; used {font-family Acorus Chen China Chloroplasts Evol. RNA SSC based coding common different distributed essential font-size functional genes, including infA information non-coding repeat selected substitution synonymous unique) (Arg) (Leu) (Ser) ./s--- Comparative Complete However, Lemna Phylogenetic additional aureum, bp) compared conserved double; esculenta esculenta, family located majority minor, molecular nucleotide open ratios rpl selection species, (%) (.%) (.%), ./journal.pone..t ACG Acids Araceae, Biol. Biotechnology Click Colchicum Dieffenbachia Evolutionary Furthermore, Gene Genet. Genomes: Kim LINK Nucleic Pinellia Research Spirodela Wang analyses assembled border-color border-width contains file. genetic important introns large long loss pressure protein rRNA reading relationships respectively. results size solid; studies tRNA tree usage using {font-style {font-weight (Ala) (DOCX) (Gly) (Pro) (Thr) (Val) .%, Biol Biology: Comparison Gloriosa Illumina Methods Province, Res. Sorted TIC Table). Tandem Wolffia Wolffiella accD, alignment angiosperm application autumnale available bold boundaries characteristics constructed content contents courier; crapnelliana em; genomic green groups highest i.e., identified inner intron known longer lost mapping markers ndhD new nonsynonymous order organization palindromic population position pt;} reference. region, related repeated repeats, reported research sequencing single-copy sister small software start subunit tandem ternata, terrestrial tree. version widely


Creating a sitemap generator for Next.js
From sitemap creation to search engine index request
In this story, I’d like to share the search engine optimization — that was done while converting the Volla bridge page which was written in Vue.js into Next.js — and how I created a dynamic sitemap generator for Next.js.
1. Create sitemap generator script following Next.js folder structure
Next.js automatically creates URL following folder and file name in the pages directory. So, I’m going to write the XML generating script, that exclude the special file names of Next.js (_document.js, _app.js etc.) among all the folder and file names in the pages directory using globby.
First, create a scripts folder in the root directory, and write the following code named sitemap-common.js.
Executing the above script creates xml file as below(example).
2. Writing sitemap generator script for external API
As in the example code above, it’s relatively easy to create sitemaps for static pages. However, for dynamic pages(e.g. pages with userId), we need to write a script that creates a sitemap in a slightly different way (in the example code, I used JSONPlaceholder’s API).
I wrote the following code — named sitemap-posts.js.
Executing the above script creates xml file as below(example).
3. Writing script that compresses all sitemap files created above into gzip format
Sitemaps that compressed in gzip(.gz) format can be used in the same way as xml format sitemaps, but in a smaller size. Using zlib, I’m going to compress all the xml files created above into a gzip format.
The above script compresses all the xml files created in steps 1 and 2 into .gz format.
4. Writing sitemap index generating script for the sitemap files which created by the above methods
Providing multiple sitemaps to search engines (Google Search Console, Naver Search Advisor, etc.) requires sitemap index file.
I created each sitemap separately for various dynamic URLs such as /seller/[_id], /product/[_id], and /video/[_id]. To submitting a sitemap to Google Search Console, etc., a single sitemap must be submitted, so I wrote the following script to create a sitemap index file.
Executing the above script creates xml file as below(example).
5. Writing a bash script that creates a new sitemap for each master deployments, and a script that pings the sitemap to Google Search Console from GitHub Actions
# yarn sitemap
$ cd public
$ rm -rf sitemap
$ mkdir sitemap
$ cd ..
$ cd scripts
$ node ./sitemap-common.js
$ node ./sitemap-posts.js
$ node ./sitemap.js
If you want to make Google Search Console reindex your pages, just add one line below at the end of the script.
$ curl http://google.com/ping?sitemap=http://website.com/sitemap.xml
I wrote a new bash script like below to create sitemaps in xml format, compress those sitemaps into gzip format, and remove unused xml files automatically.
Afterwards, I modified the workflow file to run the above scripts in GitHub Actions on master deployment.
# Create a sitemap and submit it to Google.
- run: yarn sitemap
name: ping sitemap
Takeaway
Hope you enjoyed my short tutorial about generating sitemaps for Next.js. Please feel free to contact me — visit my LinkedIn or just send me an Email to<EMAIL_ADDRESS>Thanks!
Title : Creating a sitemap generator for
Next.js
Date : August 30, 2020
Writer : Hyouk Seo (Spemer)


Grimoire is a Python library for creating interactive fiction as hyperlinked html.
The source code is available on github including the source for this tutorial which was created using Grimoire itself.


Warehouse Freightman Axel:
Welcome! I deliver packages of all shapes and sizes to their destinations, safely and promptly. What do you want to send?
Could you confirm the address?
"I want to learn a skill."
Quest


http://strands-project.eu
Linda, the robotic guide
Please follow me.
Show me your card to tweet a picture


Concise
Reliability of statically typed languages with flexibility of dynamic languages
No runtime dependencies
Rapid prototyping
Built-in concurrency
Multiplatform and cross compilation


Dear Sir, I represent a top company executive in Russia. My name is Stuart Fielding and I am the Personal Accountant to the organization I have a very sensitive and private offer from this top executive to ask for your partnership to re-profile some offshore investment funds worth over US$200,000,000 (Two Hundred Million United States Dollars). I am constrained however to withold most of the details for now. But in summary the invested funds are in a bank in western Europe, we need to terminate this investments and re-profile the funds over to you for certain reasons. This is due to the major shake ups and on going economic re-structuring policy in Russia presently. This is a legitimate transaction, if we are agreed on the terms you will be paid 10% for "re- profiling and subsequent management of the funds" . If you are interested, please write back by email to<EMAIL_ADDRESS>Provide me with your trusted pe rsonal telephone numbers and email address and I will give you further details. Please keep this close to your chest as much as possible; we cannot afford any political problems. Write me back. I look forward to it. Best regards, stuart fielding


Nebraska Lincoln
"There really is no place like Nebraska. As an out of state student, I was terrified to come to such a large school knowing close to nobody. However I was able to get involved in so many clubs and organizations that allowed me to meet so many great people. The resources we have through the library and your own college are absolutely amazing, and you'll never feel lost because there's always someone there to help."
- Henry Clarke
Southeast Community College
"Between the affordable tuition and fees, the small class sizes, the convenience of the campus location and online, or the friendly and courteous faculty and staff, it's hard not to have a positive experience at SCC. I still get to live in downtown Lincoln and visit with all my friends in the area, but for a fraction of the cost!"
- Rose Anderson
Nebraska Wesleyan
"Nebraska Wesleyan is rated the #1 liberal arts university in Nebraska, and that doesn't surprise me at all. The small class sizes allow you to grow closer to your professors and fellow students, most of which share your similar passions. If it weren't for the amazing professors I've met along the years I wouldn't feel as prepared to graduate as I am now!"
- Brian Herman
Union College
"I think Union is a great place to be. Teachers are not afraid to go the extra mile to help you with a homework assignment, you make friends who have your back - spiritually and academically, and the small campus provides endless service and leadership experiences!"
- Mary Collins


This platform enables you search for words that contain a character either in the beginning, middle or end. For that, please choose a character you wish to investigate, then choose its position.


Ingredients
Ragù
1 tbsp olive oil
2 large carrots, finely chopped
1 stick celery, finely chopped
1 can crushed tomatoes
1 tbsp tomato paste
1 small brown onion, finely chopped
2 cloves garlic, finely chopped
1 tsp oregano
1kg ground beef (can also do half pork, half beef)
1 cup beef stock
Bechamel
3 cups milk
2 tbsp plain flour
3 tbsp butter
100g parmesan
1 tsp nutmeg
Pasta (requires pasta machine, can also use store bought lasagne sheets)
500g pasta flour
5 large eggs
Topping
100g parmesan, shredded
200g fresh mozarella, shredded
Serves Eight Total Time: 21⁄2 hours
Start with the pasta. Create a sturdy crater with all the pasta flour and crack the five eggs into the middle. Slowly combine the edges fo the
flour with the eggs until the eggs are fully mixed. Then switch to breading the dough with the hands until it is no longer sticky. Cut the dough into
eight equal portions.
Then start the Ragù. Add 1 tbsp olive to a large pot, and then cook the carrots, onion, celery and garlic over medium heat for 7 minutes. Then add in the
beef (season with salt and pepper) as well as the tomatoes, tomato paste, stock and oregano. Cook for 12 minutes over medium heat.
Meanwhile add the butter to another pot and melt over medium heat. Remove from head and stir in the flour until it is fully mixed. Then return to low heat and
add in the milk slowly until the sauce is no longer thick. Then remove from heat and stir in the parmesan.
Pass the dough through the pasta machine until it is sufficiently thin (setting 6 on Atlas machine), then hang up the pasta until it is ready to
start layering.
Preheat the oven to 400 deg Fahrenheit.
Butter a large baking dish, then start with a layer of pasta followed by a layer of ragù, then bechamel and then the cheese topping. Make the layers sufficiently thin
so you have enough sauces for five or six layers. Keep layering, you can finish off with a layer of cheese on top and then add some pieces of butter to have the
top brown nicely. Bake in the oven for 20 minutes, or until the top is browned. Then remove from oven and let sit for at least 10 minutes before serving.


--- layout: post title: Pdc2008 here I come date: '2008-05-28T16:30:00.002+01:00' tags: [conferences] modified_time: '2008-05-28T16:49:19.405+01:00' blogger_id: tag:blogger.com,1999:blog-4015568221071268916.post-8787789342678949028 comments: true blogger_orig_url: http://serialseb.blogspot.com/2008/05/pdc2008-here-i-come.html ---
One of the first thing I did this morning was to make sure I had registered for the 2008 edition of the Pdc.
Any brits travelling to LA or any alt.net guys want to organize an unconf, let me know.
Now they need to open the registration for TechEd Europe and I'll be booked for the year.


The Delhi Police has stopped Baba Ramdev's protest towards Parliament near the Ranjit Singh flyover. Yoga guru Baba Randev waves to his supporters from the window of a bus after court arrest during a march to Parliament to intensify an anti-corruption protest and press for a change of government in New Delhi. Baba Ramdev has courted arrest along with his supporters in New Delhi. Waving Indian flags and shouting slogans, the protesters climbed into a row of police buses parked around the Ramlila Ground, where the yoga guru had been Baba Ramdev is detained by police in New Delhi. Waving Indian flags and shouting slogans, followers of Ramdev climbed into a row of police buses parked around the Ramlila ground that the yoga guru and his supporters had occupied for the past few days.on a hunger strike against corruption and black money for five days.Baba Ramdev has been stopped from marching to Parliament and has been taken into preventive custody at the Ranjit Singh flyover, about half a kilometer away from the Ramlila Ground where the yoga guru had been on a hunger strike against corruption and black money for five days.The yoga guru took the opportunity to slam the ruling Congress saying, “The Congress's hand is not with us, but my hand will now be held to stop this march."Supporters of Baba Ramdev march to Parliament to intensify an anti-corruption protest and press for a change of government in New Delhi. The yoga guru has courted arrest, has been taken into preventive custody and is right now in a Delhi Transport Corporation bus at the Ranjit Singh flyover.Yoga guru Baba Ramdev waves the national flag from atop a jeep as he along with his supporters march to Parliament to intensify an anti-corruption protest and press for a change of government in New Delhi.As though on cue, his supporters began to fill the Delhi Transport Corporation buses standing by. These buses also doubled as barricades to stop the protestors from moving towards Parliament.The Delhi Police has stopped Baba Ramdev's protest towards Parliament near the Ranjit Singh flyover. Baba Ramdev, in his trademark red robes and a black band of protest on his forehead, was standing atop a vehicle with many supporters carrying Indian flags following him.Surrounded by supporters waving the national flag, yoga guru Baba Ramdev began his march towards Parliament from the camp at Ramlila Maidan, just four kms away, where he has been on a hunger strike against corruption and black money for five days.


What is Elinguage?
Web platform for communication using different artificial languages. New idea for your and your friends fun. Enjoy yor conversation!
How it works?
Start
Register or sign in
Translate
Write word, choose the language and translate
Share
Create
Create your own language!


Spurs sparkle on Mourinho’s happy return
LONDON, Nov 23 — Jose Mourinho got off to the best possible start as Tottenham Hotspur manager as his new side beat West Ham United 3-2 at London Stadium on Saturday — their first Premier League away win in 10 months.
First-half goals from Son Heung-min and Lucas Moura and another after the break from Harry Kane — his 175th for the club — inflicted West Ham’s fifth league defeat in seven games and piled more pressure on manager Manuel Pellegrini whose side sit close to the drop zone.
Mourinho, however, will not be happy with the way Spurs conceded two late goals as substitute Michail Antonio and Angelo Ogbonna capitalised on familiar errors in a defence that has kept just one league clean sheet all season.
After Kane had an early effort ruled out for offside, Son put the visitors ahead on 36 minutes, sweeping by Papa Diop and firing past West Ham’s unconvincing keeper Roberto for his sixth goal in as many games.
Mourinho, returning to English football after 11 months, punched the air in celebration and his mood improved further before the break when an outrageous scooped pass from Dele Alli freed Son on the left.
The South Korean’s inviting cross was forced home at the back post by Moura, who was one of three changes on Mourinho’s first team-sheet.
Kane was completely unmarked to head home Tottenham’s third on 49 minutes and move third on Spurs’ list of all-time scorers, behind Jimmy Greaves (266) and Bobby Smith (208).
Declan Rice had a late effort disallowed for offside by VAR as West Ham rallied, although the result was never in doubt, Ogbonna netting their second deep into stoppage-time. — Reuters


Oaty Pancakes
- ⏲ Prep time: 10 min
- 🍳 Cook time: 10 min
- 🍽 Servings: 4
Ingredients
- 3⁄4 cup milk
- 3⁄4 rolled oats
- 1 egg
- 1⁄2 teaspoon salt
- 2-3 tablespoon sugar
- 1⁄2 cup flour
- 2 teaspoon baking powder
- 2 teaspoon baking soda
- 25g butter (melted)
Directions
- Pour milk over rolled oats. Add remaining ingredients.
- Mix with fork (or in a food processor) just enough to
combine ingredients.
- Put spoonfuls of mixture onto preheated, greased or
sprayed griddle or fry pan. Turn spoon for round
pancakes.
- Turn pancakes as soon as bubbles form and
burst in the middle. Slide thin metal blade under
pancake and flip over. Second side is cooked when
centre springs back.
- Put a dab of butter on cooked surface of several
pancakes.
- Pile up so butter is between pancakes. Pour
syrup over before serving.
- Serve Oaty pancakes for breakfast or brunch, with juice
or coffee. Pour syrup over the pile of buttered pancakes
and serve bacon or sausages alongside if you like.
Contribution
Puremana
Recipe tags:
breakfast
quick
sweet
pancake
cheesefare


Quartararo takes pole in Malaysia after Marquez crash
Fabio Quartararo smashed the lap record at the Sepang International Circuit to earn Petronas Yamaha a home pole position for Sunday's Malaysian Grand Prix, while MotoGP world champion Marc Marquez suffered a nasty crash.
SEPANG, Malaysia: Fabio Quartararo smashed the lap record at the Sepang International Circuit to earn Petronas Yamaha a home pole position for Sunday's Malaysian Grand Prix, while MotoGP world champion Marc Marquez suffered a nasty crash.
Quartararo's one minute 58.303 seconds lap helped the rookie finish ahead of Maverick Vinales (1:58.406), with Franco Morbidelli completing the Yamaha front-row lockout.
Marquez, who sewed up his sixth MotoGP title and fourth in a row in Thailand last month, spent much of the session trailing Quartararo before suffering a massive highside entering Turn 2.
The Honda rider was thrown off his bike and landed awkwardly before gingerly walking away following the accident. He will start 11th, his worst qualifying performance since the 2015 Italian Grand Prix.

"It was really tough because, honestly, I knew that Marc wanted to follow me," the French rider said after claiming his fifth pole of 2019 for his sixth consecutive front-row start.
"We made quite the slow lap out of the pit lane. I was not really confident about the tyres.
"In the first corner I go wide, then I make a mistake in Turn 2, and almost highside in Turn 5. It was quite difficult to make the decision but I managed to get a clear lap in the last lap."
Pramac Ducati rider Jack Miller will start fourth with LCR Honda's Cal Crutchlow and Yamaha's Italian great Valentino Rossi joining him in the second row.
Triple MotoGP champion Jorge Lorenzo of Repsol Honda will start 18th after going more than a second short of the Q1 pace.
Marquez has extended his championship lead to an unbeatable 375 points with two races remaining, in Malaysia and on home soil in Valencia.
(Reporting by Amlan Chakraborty in New Delhi; Editing by Jacqueline Wong)


Paris, France's capital, is a major European city and a global center for art, fashion, gastronomy and culture. Its 19th-century cityscape is crisscrossed by wide boulevards and the River Seine. Beyond such landmarks as the Eiffel Tower and the 12th-century, Gothic Notre-Dame cathedral, the city is known for its cafe culture and designer boutiques along the Rue du Faubourg Saint-Honoré.
Rome (Latin and Italian Roma [ˈroːma] is the capital city and a special comune of Italy (named Comune di Roma Capitale) as well as the capital of the Lazio region. The city has been a major human settlement for over two millennia. With 2,879,728 residents in 1,285 km2 (496.1 sq mi), it is also the country's most populated comune. It is the third most populous city in the European Union by population within city limits.
Jaipur is the capital and the largest city of the Indian state of Rajasthan. As of 2011, the city had a population of 3.1 million, making it the tenth most populous city in the country. Jaipur is also known as the Pink City, due to the dominant color scheme of its buildings. It is located 268 km (167 miles) from the national capital New Delhi. Jaipur was founded in 1727 by the Rajput ruler Jai Singh II,[10] the ruler of Amer, after whom the city is named. It was one of the earliest planned cities of modern India, designed by Vidyadhar Bhattacharya.


When it comes to PHP, there are already existing great enterprise solutions
out there. If you have done something existing in PHP already, most likely you
have used one of them. Cradle is a meta framework, and whenever your ready to
integrate with a more enterprise solution, you can easily so with the
->export()
method. The following example shows how this can be done.
<?php
/**
* Hello Laravel !
*/
$app->get('/', cradle()->export('Get Foo Bar'));
The above will return a callback which Laravel can
call on. In this particular case Laravel can pass an
N amount of arguments, all of which will be ignored by default and
Cradle will continue with its own way of doing things and in the end either
return a response string or false. If you want to map out the response before
it gets sent to Laravel you need to create a map
callback and add true to the ->export()
method. The following shows how
this can be done.
<?php
/**
* Hello Laravel !
*/
$app->get('/{app_id}', function($appId) {
list($request, $response, $next) = cradle()->export('Get Foo Bar', true);
$request->setPost('app_id', $appId);
return $next();
});
Doing it this way will return three properties, $request
which is the
Cradle Request object, $response
which is the Cradle
Response object and $next
which is the callback to
trigger the flow. In Symfony you an achieve the same
in Laravel with the following.
<?php
// src/AppBundle/Controller/BlogController.php
namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
class BlogController extends Controller
{
/**
* Matches /blog/*
*
* @Route("/blog/{slug}", name="blog_show")
*/
public function showAction($slug)
{
list($request, $response, $next) = cradle()->export('Get Foo Bar', true);
$request->setPost('blog_slug', $slug);
return new Response($next());
}
}
With full integration, we will not be utilizing Cradle's Request, Response, nor the Router to run these flows. Instead we rely on the framework that we are integrating with to have these features. To do a full on integration it's really three steps.
Define all your flows in the configuration folder which is usually marked as
/config
or /app/config
. Your File should look like the following.
/config/flows.php
<?php
return array(
array(
'Form Submit',
'Some Form Event',
'Another Form Event',
array(
'A Good Form Event',
'Controller@action',
),
array(
'A Bad Form Event',
'Controller::action',
)
),
array(
'Render Page',
'Some Page Event',
'Another Page Event',
)
);
Setup Cradle in the main PHP file. Most frameworks use /public/index.php
or /web/app.php
. Open that file and add the following.
<?php
if(!function_exists('cradle')) {
function cradle()
{
static $framework = null;
if(is_null($framework)) {
$framework = new \Cradle\Frame\FrameHttp;
}
return $framework;
}
}
Populate the Framework Actions
<?php
// src/AppBundle/Controller/BlogController.php
namespace AppBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
class BlogController extends Controller
{
/**
* Matches /blog/*
*
* @Route("/blog/{slug}", name="blog_show")
*/
public function showAction($slug)
{
$response = new Response();
cradle()->trigger('Render Page', $slug, $response);
return $response;
}
}


{% extends "admin/delete_selected_confirmation.html" %} {% load static admin_urls core_tags %} {% block breadcrumbs %}
Are you sure you want to delete the record below from the reference data item "{{ ref_model }}"?
This will permanently remove it from the database.


The User Guide covers all of pandas by topic area. Each of the subsections introduces a topic (such as “working with missing data”), and discusses how pandas approaches the problem, with many examples throughout.
Users brand-new to pandas should start with 10 minutes to pandas.
Further information on any specific method can be obtained in the API reference.
where()
query()
get()
lookup()
MultiIndex
.str
NA
plot
apply
eval()
NaN


{% extends 'email/base.html' %} {% block message %}
You're receiving this email because you request a password reset for your account at the Online CAL Portal.
Please go to the following page and choose a new password:
{% block reset_link %}
{{ protocol }}://{{ domain }}{% url 'password_reset_confirm' uidb64=uid token=token %}
{% endblock %}


--- layout: page-fullwidth permalink: /PresentationTechnical/ title: Technical Presentations That Work ---
Presenters want their audiences to listen and take away the main message of the presentation. Furthermore, presenters want the talk to be so interesting that audience members will download related papers, buy a book or invite the presenter to speak in another venue. A good presentation delivers the important message, is somewhat entertaining (but entertainment is not a substitute for solid technical content) and leaves the audience wanting more. Therefore good technical speaking skills are important for your career.
Fact: It is not too strong a statement to say that good presentation skills will open up a wide range of career opportunities (whether you take them or not is your choice). You will probably appreciate these opportunities when you have been doing the same job for five years and want to try something new.Here is a few resource for developing a good presentation:


About¶
License¶
The MIT License (MIT)
Copyright (c) 2016 Ryan Wynn
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Contributing¶
The Monstache project welcomes, and depends, on contributions from developers and users in the open source community. Contributions can be made in a number of ways, a few examples are:
- Code patches via pull requests
- Documentation improvements
- Bug reports and patch reviews
Reporting an Issue¶
Please include as much detail as you can. Let us know your platform, Monstache version, MongoDB version, and Elasticsearch version.
Testing the Development Version¶
If you want to just install and try out the latest development version of
Monstache you can do so with the following commands. This can be useful if you
want to provide feedback for a new feature or want to confirm if a bug you
have encountered is fixed in the git master. You will need at least golang 1.11
which includes native go modules support.
cd ~/build # somewhere outside your $GOPATH
git clone https://github.com/rwynn/monstache.git
cd monstache
git checkout <branch-to-build>
go install
# the resulting monstache binary will be in $GOPATH/bin
Running the tests¶
To run the tests without Docker, you will need to have local mongod and elasticsearch servers running.
Then you will need to start a monstache process in one terminal or in the background.
monstache -verbose
Finally in another terminal you can run the tests by issuing the following commands
cd monstache
go test -v
Warning
Running the Monstache tests will perform modifications to the test.test
namespace in
MongoDB and will index documents in the test.test
index in Elasticsearch. If you have
data that you need to keep on your local servers, make a back up before running the tests.
Note
If you don't want to setup MongoDB and Elasticsearch on your machine another option for running the tests
is via Docker. After cloning the monstache repo you can cd into the docker/test
directory and run
run-tests.sh
. You will need recent versions of docker
and docker-compose
to run the tests this way.
Services for MongoDB and Elasticsearch will be started and the tests run on any changes you have made to the
source code.
Submitting Pull Requests¶
Once you are happy with your changes or you are ready for some feedback, push it to your fork and send a pull request. For a change to be accepted it will most likely need to have tests and documentation if it is a new feature.
Release Notes¶
See github.com for the most recent release notes.
monstache v4.16.1¶
- Fix bug in mongoX509Settings validate (issue #198)
- Fix issue stopping monstache when using legacy oplog tailing (non change-stream) of a sharded cluster
- Upgrade golang on release builds to 1.12.1
- Upgrade docker images to use Alpine 3.9.2
monstache v3.23.1¶
- Fix bug in mongoX509Settings validate (issue #198)
- Fix issue stopping monstache when using legacy oplog tailing (non change-stream) of a sharded cluster
- Upgrade golang on release builds to 1.12.1
- Upgrade docker images to use Alpine 3.9.2
monstache v4.16.0 (4tsb)¶
- Add a new integer setting
direct-read-concur
which, when set, limits the number of concurrent direct reads that will be performed. E.g. if you havedirect-read-namespaces
set to 23 namespaces anddirect-read-concur
set to 2, then monstache will read and sync namespace 1 and 2 concurrently and wait for both to finish before starting 3 and 4 - and so on. - Add the ability to disable direct read collection splitting by setting
direct-read-split-max
to -1. By default, monstache will split each direct read collection up to 9 times and read each segment in a separate go routine. If you don't want to split collections at all then setdirect-read-split-max
to -1.
monstache v3.23.0 (4tsb)¶
- Add a new integer setting
direct-read-concur
which, when set, limits the number of concurrent direct reads that will be performed. E.g. if you havedirect-read-namespaces
set to 23 namespaces anddirect-read-concur
set to 2, then monstache will read and sync namespace 1 and 2 concurrently and wait for both to finish before starting 3 and 4 - and so on. - Add the ability to disable direct read collection splitting by setting
direct-read-split-max
to -1. By default, monstache will split each direct read collection up to 9 times and read each segment in a separate go routine. If you don't want to split collections at all then setdirect-read-split-max
to -1.
monstache v4.15.2¶
- Fix issue using monstache with GoCenter
monstache v3.22.2¶
- Fix issue using monstache with GoCenter
monstache v4.15.1¶
- Upgrade golang to 1.12
- Fix a panic under some conditions when processing the result of a golang plugin
Map
function
monstache v3.22.1¶
- Upgrade golang to 1.12
- Fix a panic under some conditions when processing the result of a golang plugin
Map
function
monstache v4.15.0¶
-
This release adds the ability for MongoDB 4+ users to open change streams against entire databases or entire deployments. See the documentation for the
change-stream-namespaces
option for details. -
The
resume
,resume-from-timestamp
,replay
, andcluster-name
options can now be used in conjunction withchange-stream-namespaces
if you have MongoDB 4 or greater. -
Improved support for connecting directly to shards when authorization is required on the connection. This is only applicable if you are not using change streams and you are connecting to a sharded MongoDB deployment. In that case Monstache needs to discover and connect directly to shards. In this case it will reuse the login info from the initial connection to the
mongos
server when connecting to the shards.
monstache v3.22.0¶
-
This release adds the ability for MongoDB 4+ users to open change streams against entire databases or entire deployments. See the documentation for the
change-stream-namespaces
option for details. -
The
resume
,resume-from-timestamp
,replay
, andcluster-name
options can now be used in conjunction withchange-stream-namespaces
if you have MongoDB 4 or greater. -
Improved support for connecting directly to shards when authorization is required on the connection. This is only applicable if you are not using change streams and you are connecting to a sharded MongoDB deployment. In that case Monstache needs to discover and connect directly to shards. In this case it will reuse the login info from the initial connection to the
mongos
server when connecting to the shards.
monstache v4.14.2¶
- Change stream performance improvements
monstache v3.21.2¶
- Change stream performance improvements
monstache v4.14.1¶
- Fix for regression in previous release where the MongoDB initial connection timeout was not being honored
- Added a new setting
relate-buffer
which is the maximum number of relate events to allow in queue before skipping the relate and printing an error. This was added to prevent the scenario where a large number of relate events stall the pipeline. The default number of relates to allow in queue is 1000.
monstache v3.21.1¶
- Fix for regression in previous release where the MongoDB initial connection timeout was not being honored
- Added a new setting
relate-buffer
which is the maximum number of relate events to allow in queue before skipping the relate and printing an error. This was added to prevent the scenario where a large number of relate events stall the pipeline. The default number of relates to allow in queue is 1000.
monstache v4.14.0¶
- Performance and reliability improvements
- Fix for issue #168 by adding new TOML only configs elasticsearch-healthcheck-timeout-startup and elasticsearch-healthcheck-timeout. These are in seconds.
- Fix a panic occurring when an empty array was returned from a pipeline javascript function.
- Default read/write timeouts changed to 30s, up from 7s.
monstache v3.21.0¶
- Performance and reliability improvements
- Fix for issue #168 by adding new TOML only configs elasticsearch-healthcheck-timeout-startup and elasticsearch-healthcheck-timeout. These are in seconds.
- Fix a panic occurring when an empty array was returned from a pipeline javascript function.
- Default read/write timeouts changed to 30s, up from 7s.
monstache v4.13.4¶
- Improvements to change-stream-namespaces
monstache v3.20.4¶
- Improvements to change-stream-namespaces
monstache v4.13.3¶
- Improvements in recovery from failed connections and errors
monstache v3.20.3¶
- Improvements in recovery from failed connections and errors
monstache v4.13.2¶
- Fix namespace parsing for collections with dots in the name in find calls in Javascript
- Add additional validation when certs are appended to the root store to make sure it was successful
- Ensure the mechanism is set to MONGODB-X509 when logging in with an X509 certificate
monstache v3.20.2¶
- Fix namespace parsing for collections with dots in the name in find calls in Javascript
- Add additional validation when certs are appended to the root store to make sure it was successful
- Ensure the mechanism is set to MONGODB-X509 when logging in with an X509 certificate
monstache v4.13.1¶
- Fix issue #157 related to the
relate
config - Improve reliability for issue #153 by ensuring direct reads are more resilient in cluster mode
- Breaking: removes the dynamic nature of finding the oplog collection. Now defaults to
oplog.rs
. If you are still using MongoDB withmaster
mode instead of replica sets then you now need to explicitly setmongo-oplog-collection-name
tooplog.$main
.
monstache v3.20.1¶
- Fix issue #157 related to the
relate
config - Improve reliability for issue #153 by ensuring direct reads are more resilient in cluster mode
- Breaking: removes the dynamic nature of finding the oplog collection. Now defaults to
oplog.rs
. If you are still using MongoDB withmaster
mode instead of replica sets then you now need to explicitly setmongo-oplog-collection-name
tooplog.$main
.
monstache v4.13.0¶
- Fixed issue where keep-src was not being honored for relate configs
- Added mongo-x509-settings config option to allow x509 auth when connecting
- Added ability to see field level changes (updateDescription) if available in javascript and golang
- Handle delete events if possible such that they trigger resync of related docs when a relationship exists
- Remove the requirement that golang plugins must implement a Map function
- Added the ability to override the ID sent to Elasticsearch in the mapping phase.
monstache v3.20.0¶
- Fixed issue where keep-src was not being honored for relate configs
- Added mongo-x509-settings config option to allow x509 auth when connecting
- Added ability to see field level changes (updateDescription) if available in javascript and golang
- Handle delete events if possible such that they trigger resync of related docs when a relationship exists
- Remove the requirement that golang plugins must implement a Map function
- Added the ability to override the ID sent to Elasticsearch in the mapping phase.
monstache v4.12.5¶
- Fix regression preventing
resume-name
from being set correctly - Add configuration option
config-database-name
to configure the MongoDB database under which monstache stores metadata. Previously hard coded tomonstache
, the default value.
monstache v3.19.5¶
- Fix regression preventing
resume-name
from being set correctly - Add configuration option
config-database-name
to configure the MongoDB database under which monstache stores metadata. Previously hard coded tomonstache
, the default value.
monstache v4.12.4¶
- Repeatable builds with go modules
- Fixes for deadlock and race conditions
monstache v3.19.4¶
- Repeatable builds with go modules
- Fixes for deadlock and race conditions
monstache v4.12.3¶
- Upgrade elastic client to pickup fix for AWS request signing
monstache v3.19.3¶
- Upgrade elastic client to pickup fix for AWS request signing
monstache v4.12.2¶
- Fix parse of env value with = character
monstache v3.19.2¶
- Fix parse of env value with = character
monstache v4.12.1¶
- Fix read of
MONSTACHE-MONGO-CONFIG-URL
environment variable
monstache v3.19.1¶
- Fix read of
MONSTACHE-MONGO-CONFIG-URL
environment variable
monstache v4.12.0¶
- Added the ability to configure monstache with environment variables. See issue #133 for details
- Added a
-tpl
flag to preprocess TOML config files as golang templates with access to env vars - Added a
disable-change-events
option to turn off listening to the oplog - Upgraded the monstache docker image from Alpine 3.7 to 3.8
monstache v3.19.0¶
- Added the ability to configure monstache with environment variables. See issue #133 for details.
- Added a
-tpl
flag to preprocess TOML config files as golang templates with access to env vars - Added a
disable-change-events
option to turn off listening to the oplog - Upgraded the monstache docker image from Alpine 3.7 to 3.8
monstache v4.11.9¶
- Fix for lock ups by removing default of no timeout
- Default timeouts for MongoDB set to 7s
- Better recovery for change-streams
- Breaking changes - timeouts set in config file must be greater than 0 (no timeout)
monstache v3.18.9¶
- Fix for lock ups by removing default of no timeout
- Default timeouts for MongoDB set to 7s
- Better recovery for change-streams
- Breaking changes - timeouts set in config file must be greater than 0 (no timeout)
monstache v4.11.8¶
- Fix panic on nil access for issue #129
monstache v3.18.8¶
- Fix panic on nil access for issue #129
monstache v4.11.7¶
- Ensure
input.Document
map contains an_id
field on deletes when sent to theProcess
function in a plugin - Ensure failed bulk response items are logged as errors
monstache v3.18.7¶
- Ensure
input.Document
map contains an_id
field on deletes when sent to theProcess
function in a plugin - Ensure failed bulk response items are logged as errors
monstache v4.11.6¶
- Fix issue where the
file-namespaces
config option was not being processed correctly
monstache v3.18.6¶
- Fix issue where the
file-namespaces
config option was not being processed correctly
monstache v4.11.5¶
- Fix a race condition when a
related
config is used and a golang plugin implementsProcess
.
monstache v3.18.5¶
- Fix a race condition when a
related
config is used and a golang plugin implementsProcess
.
monstache v4.11.4¶
- Use less CPU resources
- Fix for race conditions
monstache v3.18.4¶
- Use less CPU resources
- Fix for race conditions
monstache v4.11.3¶
- Fix an issue where a paused monstache process would not resume correctly in cluster mode
monstache v3.18.3¶
- Fix an issue where a paused monstache process would not resume correctly in cluster mode
monstache v4.11.2¶
- Fix an issue with workers where only one worker would be used for change documents
- Redact sensitive connection information when logging connection failures
monstache v3.18.2¶
- Fix an issue with workers where only one worker would be used for change documents
- Redact sensitive connection information when logging connection failures
monstache v4.11.1¶
- Fix for connection checker thread exiting early in cluster mode
- Better handling of JSON serialization errors
monstache v3.18.1¶
- Fix for connection checker thread exiting early in cluster mode
- Better handling of JSON serialization errors
monstache v4.11.0¶
- Reliability improvements
- Fix allowing one to use a MongoDB view as a direct-read-namespace
- Addition of the
relate
config to declare dependencies between collections - Experimental support for AWS Signing Version 4
monstache v3.18.0¶
- Reliability improvements
- Fix allowing one to use a MongoDB view as a direct-read-namespace
- Addition of the
relate
config to declare dependencies between collections - Experimental support for AWS Signing Version 4
monstache v4.10.2¶
- Fixes related to i/o timeout errors
- Default timeout configurations changed to no timeout (0) with the exception of the initial connection to MongoDB which times out after 15 seconds. Values of 0 disable timeouts. All other positive values are in seconds. New defaults shown below. You probably do not need to specify any of these values unless you encounter problems.
[mongo-dial-settings]
timeout=15
read-timeout=0
write-timeout=0
[mongo-session-settings]
socket-timeout=0
sync-timeout=0
monstache v3.17.2¶
- Fixes related to i/o timeout errors
- Default timeout configurations changed to no timeout (0) with the exception of the initial connection to MongoDB which times out after 15 seconds. Values of 0 disable timeouts. All other positive values are in seconds. New defaults shown below. You probably do not need to specify any of these values unless you encounter problems.
[mongo-dial-settings]
timeout=15
read-timeout=0
write-timeout=0
[mongo-session-settings]
socket-timeout=0
sync-timeout=0
monstache v4.10.1¶
- Clean up timeout configurations and increase default timeout values
- New timeout configurations surfaced - read and write timeout. Configure as follows (default values shown):
[mongo-dial-settings]
timeout=10
read-timeout=600
write-timeout=30
[mongo-session-settings]
socket-timeout=600
sync-timeout=600
monstache v3.17.1¶
- Clean up timeout configurations and increase default timeout values
- New timeout configurations surfaced - read and write timeout. Configure as follows (default values shown):
[mongo-dial-settings]
timeout=10
read-timeout=600
write-timeout=30
[mongo-session-settings]
socket-timeout=600
sync-timeout=600
monstache v4.10.0¶
- Fix for issue #97 where monstache would exit before syncing all documents with
-exit-after-direct-reads
enabled - Support added for MongoDB change streams via the
change-stream-namespaces
option - New golang plugin functions
Process
andPipeline
added to the existingMap
andFilter
functions. TheProcess
function allows one to code complex processing after an event. TheProcess
function has access to the MongoDB session, the Elasticsearch client, the Elasticsearch bulk processor, and information about the change that occurred (insert, update, delete). ThePipeline
function allows one to assign MongoDB pipeline stages to both direct reads and change streams. Since the pipeline stages may differ between direct reads and change streams the function is passed a boolean indicating the source of the data. For example, a$match
clause on the change stream may need to reference thefullDocument
field since the root will be the change event. For direct reads the root will simply be the full document. - New config option
pipeline
allows one to create aggregation pipelines in javascript for direct reads and change streams. This can be used instead of thePipeline
function in a golang plugin. The exported function in javascript takes a namespace and a boolean indicating whether or not the source was a change stream. The function should return an array of pipeline stages to apply. - New config option
pipe-allow-disk
which when enabled allows large pipelines to use the disk to save intermediate results. - New global function available in javascript
script
functions namedpipe
. Thepipe
function is simliar to existingfind
function but takes an array of aggregation pipeline stages as the first argument.
direct-read-namespaces = [test.test]
change-stream-namespaces = [test.test]
[[pipeline]]
script = """
module.exports = function(ns, changeStream) {
if (changeStream) {
return [
{ $match: {"fullDocument.foo": 1} }
];
} else {
return [
{ $match: {"foo": 1} }
];
}
}
"""
[[script]]
namespace = "test.test"
script = """
module.exports = function(doc, ns) {
doc.extra = pipe([
{ $match: {foo: 1} },
{ $limit: 1 },
{ $project: { _id: 0, foo: 1}}
]);
return doc;
}
"""
monstache v3.17.0¶
- Fix for issue #97 where monstache would exit before syncing all documents with
-exit-after-direct-reads
enabled - Support added for MongoDB change streams via the
change-stream-namespaces
option - New golang plugin functions
Process
andPipeline
. TheProcess
function allows one to code complex processing after an event. TheProcess
function has access to the MongoDB session, the Elasticsearch client, the Elasticsearch bulk processor, and information about the change that occurred (insert, update, delete). ThePipeline
function allows one to assign MongoDB pipeline stages to both direct reads and change streams. Since the pipeline stages may differ between direct reads and change streams the function is passed a boolean indicating the source of the data. For example, a$match
clause on the change stream may need to reference thefullDocument
field since the root will be the change event. For direct reads the root will simply be the full document. - New config option
pipeline
allows one to create aggregation pipelines in javascript for direct reads and change streams. This can be used instead of thePipeline
function in a golang plugin. The exported function in javascript takes a namespace and a boolean indicating whether or not the source was a change stream. The function should return an array of pipeline stages to apply. - New config option
pipe-allow-disk
which when enabled allows large pipelines to use the disk to save intermediate results. - New global function available in javascript
script
functions namedpipe
. Thepipe
function is simliar to existingfind
function but takes an array of aggregation pipeline stages as the first argument.
monstache v4.9.0¶
- Fix to omit version information on deletes when the index-as-update setting is ON (to match the omitted version information at indexing time)
- Fix issue #89 by making the indexed oplog field names and date format configurable
monstache v3.16.0¶
- Fix to omit version information on deletes when the index-as-update setting is ON (to match the omitted version information at indexing time)
- Fix issue #89 by making the indexed oplog field names and date format configurable
monstache v4.8.0¶
- Seperate namespace regexes for drop operations vs create/update/delete operations
- Better handling of panics
- A new
index-as-update
boolean config option that allow merge instead of replace - Fixes to the
find
andfindOne
functions available in scripts
monstache v3.15.0¶
- Seperate namespace regexes for drop operations vs create/update/delete operations
- Better handling of panics
- A new
index-as-update
boolean config option that allow merge instead of replace - Fixes to the
find
andfindOne
functions available in scripts
monstache v4.7.0¶
- add -pprof setting. When enabled and combined with -enable-http-server you can read profiling information. See Profiling for Go for more information.
- add -enable-easy-json setting. When enabled easy-json will be used for serialization to Elasticsearch.
- tweaks to the tailing code in gtm
monstache v3.14.0¶
- add -pprof setting. When enabled and combined with -enable-http-server you can read profiling information. See Profiling for Go for more information.
- add -enable-easy-json setting. When enabled easy-json will be used for serialization to Elasticsearch.
- tweaks to the tailing code in gtm
monstache v4.6.5¶
- decrease the fetch channel flush timeout
- clarify version conflicts and invalid json messages as warnings
- remove the /config endpoint for better security (use -print-config instead)
- fix LoadPlugins method (contributed by @YouthLab)
- performance tweaks in gtm
monstache v3.13.5¶
- decrease the fetch channel flush timeout
- clarify version conflicts and invalid json messages as warnings
- remove the /config endpoint for better security (use -print-config instead)
- fix LoadPlugins method (contributed by @YouthLab)
- performance tweaks in gtm
monstache v4.6.4¶
- Expose new setting direct-read-split-max which limits the number of times a collection is split for reading during direct-reads and thus the number of go routines and MongoDB connections spawned. The default is 9. Tune this setting to increase/decrease the amount of memory the monstache process will consume.
- Better Docker support due to the contributions of @a-magdy.
monstache v3.13.4¶
- Expose new setting direct-read-split-max which limits the number of times a collection is split for reading during direct-reads and thus the number of go routines and MongoDB connections spawned. The default is 9. Tune this setting to increase/decrease the amount of memory the monstache process will consume.
- Better Docker support due to the contributions of @a-magdy.
monstache v4.6.3¶
- Fix for issue #65, year outside of [0,9999]. Invalid time will be removed now with
prune-invalid-json
turned on - Fix for issue #62, the number of connections to MongoDB is now limited to a max of 32 per namespace
- Fix for issue #59, unsupported values of +/- Infinity and NaN. These values can now be removed with the
prune-invalid-json
setting - Fix for issue $46 and #66, having to do with filtering. Filters now use locks to ensure the javascript environment is used by one at a time.
monstache v3.13.3¶
- Fix for issue #65, year outside of [0,9999]. Invalid time will be removed now with
prune-invalid-json
turned on - Fix for issue #62, the number of connections to MongoDB is now limited to a max of 32 per namespace
- Fix for issue #59, unsupported values of +/- Infinity and NaN. These values can now be removed with the
prune-invalid-json
setting - Fix for issue $46 and #66, having to do with filtering. Filters now use locks to ensure the javascript environment is used by one at a time.
monstache v4.6.2¶
- Fix regression in 3.13 series where collections under 50K documents were not synching
- Performing Tuning. The following defaults have changed so please update your config files accordingly.
elasticsearch-max-conns went from 10 -> 4 elasticsearch-max-docs went from 1000 -> do not flush based on count (I suggest not overriding this since document sizes can vary greatly - instead use max-bytes) elasticsearch-max-bytes went from 5MB -> 8MB
Note when you specify elasticseach-max-bytes the value must be in bytes not MB
monstache v3.13.2¶
- Fix regression in 3.13 series where collections under 50K documents were not synching
- Performing Tuning. The following defaults have changed so please update your config files accordingly.
elasticsearch-max-conns went from 10 -> 4 elasticsearch-max-docs went from 1000 -> do not flush based on count (I suggest not overriding this since document sizes can vary greatly - instead use max-bytes) elasticsearch-max-bytes went from 5MB -> 8MB
Note when you specify elasticseach-max-bytes the value must be in bytes not MB
monstache v4.6.1¶
- Performance and bug fixes in the gtm library
monstache v3.13.1¶
- Performance and bug fixes in the gtm library
monstache v4.6.0¶
- Performance improvements. Much of the performance gains come from an upgrade of the gtm library. This library now uses split vector failing back to a paginated range queries. Also, some buffering has been removed at the gtm level for certain operations.
monstache v3.13.0¶
- Performance improvements. Much of the performance gains come from an upgrade of the gtm library. This library now uses split vector failing back to a paginated range queries. Also, some buffering has been removed at the gtm level for certain operations.
monstache v4.5.0¶
- Adds an option
delete-index-pattern
to specify an Elasticsearch index pattern to scope stateless deletes. Indexes outside of this pattern will not be considered when propogating deletes from MongoDB to Elasticsearch. By default all Elasticsearch indexes are queried. - Adds the ability to specify a global filter function in Javascript. Previously, a filter function needed to be tied to a MongoDB namespace. Now you can leave off the namespace and the filter function will be applied to all namespaces. The filter function will receive the document as the first argument and the MongoDB namespace as the second argument.
- Breaking change:
direct-read-cursors
anddirect-read-batch-size
have been removed as options. The underlying gtm library of monstache has been upgraded and no longer supports parallelCollectionScan which is being removed in future versions of MongoDB. Now gtm will use splitVector to divy up collections to read documents concurrently. Also, the batch size will be managed by MongoDB and not set explicitly. See the gtm library docs for more information. - Adds a boolean configuration option,
prune-invalid-json
, which defaults to false. Set this to true if your MongoDB data has values such as +Inf, -Inf, or NaN which are not supported by the golang JSON parser and cause infinite error loops to occur. With prune-invalid-json set to true Monstache will remove these values before indexing into Elasticsearch to avoid these errors.
monstache v3.12.0¶
- Adds an option
delete-index-pattern
to specify an Elasticsearch index pattern to scope stateless deletes. Indexes outside of this pattern will not be considered when propogating deletes from MongoDB to Elasticsearch. By default all Elasticsearch indexes are queried. - Adds the ability to specify a global filter function in Javascript. Previously, a filter function needed to be tied to a MongoDB namespace. Now you can leave off the namespace and the filter function will be applied to all namespaces. The filter function will receive the document as the first argument and the MongoDB namespace as the second argument.
- Breaking change:
direct-read-cursors
anddirect-read-batch-size
have been removed as options. The underlying gtm library of monstache has been upgraded and no longer supports parallelCollectionScan which is being removed in future versions of MongoDB. Now gtm will use splitVector to divy up collections to read documents concurrently. Also, the batch size will be managed by MongoDB and not set explicitly. See the gtm library docs for more information. - Adds a boolean configuration option,
prune-invalid-json
, which defaults to false. Set this to true if your MongoDB data has values such as +Inf, -Inf, or NaN which are not supported by the golang JSON parser and cause infinite error loops to occur. With prune-invalid-json set to true Monstache will remove these values before indexing into Elasticsearch to avoid these errors.
monstache v4.4.0¶
-
Updated the default delete strategy
-
Breaking change: check delete-strategy
monstache v3.11.0¶
-
Updated the default delete strategy
-
Breaking change: check delete-strategy
monstache v4.3.2¶
- Allow specifying a script without a namespace. In this case documents from all collections will be run through the script. The document object will continue to be the 1st argument to the function and a new 2nd argument will be the namespace of the source document. Fixes #55.
- Fix an issue where a Date object created in Javascript would not be formatted correctly for indexing.
- Build with go 1.10.1
monstache v3.10.2¶
- Allow specifying a script without a namespace. In this case documents from all collections will be run through the script. The document object will continue to be the 1st argument to the function and a new 2nd argument will be the namespace of the source document. Fixes #55.
- Fix an issue where a Date object created in Javascript would not be formatted correctly for indexing.
- Build with go 1.10.1
monstache v4.3.1¶
- Upgrade gtm to pick up fix for parallel collection scans on direct reads. Each cursor now gets its own connection.
monstache v3.10.1¶
- Upgrade gtm to pick up fix for parallel collection scans on direct reads. Each cursor now gets its own connection.
monstache v4.3.0¶
- Upgrade gtm to pick up support for parallel collection scan on direct reads if your mongodb storage engine supports it
- Add config option to specify the number of cursors to request for parallel collection scans
- Allow mappings to specify overrides for 1 of
index
andtype
instead of requiring both - Fix an issue where filters were not being applied to document updates
monstache v3.10.0¶
- Upgrade gtm to pick up support for parallel collection scan on direct reads if your mongodb storage engine supports it
- Add config option to specify the number of cursors to request for parallel collection scans
- Allow mappings to specify overrides for 1 of
index
andtype
instead of requiring both - Fix an issue where filters were not being applied to document updates
monstache v4.2.1¶
- Ensure index names are lowercase
monstache v3.9.1¶
- Ensure index names are lowercase
monstache v4.2.0¶
- Add filtering to Javascript and Golang plugins. Filtered documents are completely ignored while dropped documents result in a delete request.
monstache v3.9.0¶
- Add filtering to Javascript and Golang plugins. Filtered documents are completely ignored while dropped documents result in a delete request.
monstache v4.1.2¶
- Fix custom routing for golang plugins
- Configuration now supports paths to Javascript files in addition to inline scripts
monstache v3.8.2¶
- Fix custom routing for golang plugins
- Configuration now supports paths to Javascript files in addition to inline scripts
monstache v4.1.1¶
- Route time machine docs by MongoDB source id
monstache v3.8.1¶
- Route time machine docs by MongoDB source id
monstache v4.1.0¶
- Add a nifty time machine feature
monstache v3.8.0¶
- Add a nifty time machine feature
monstache v4.0.1¶
- Fixed a bug where monstache would think direct reads were done when they had not even started
- Performance improvements for direct reads on large collections
monstache v3.7.0¶
- Fixed a bug where monstache would think direct reads were done when they had not even started
- Performance improvements for direct reads on large collections
monstache v4.0.0¶
-
Monstache v4+ should be used for ES6+. There will still be bug fixes and maintenance done to the Monstache v3 releases to support ES2-5. You can still download v3.x releases from the downloads page or by directing go get to gopkg.in/rwynn/monstache.v3
-
Fixes deprecation warnings during bulk indexing against ES6 because of renamed fields version and version_type
-
Monstache will now default to using the ES type _doc (as opposed to the MongoDB collection name) when it detects ES 6.2+. This is the new recommended type name going forward. See issue #42.
monstache v3.6.5¶
-
Remove brittle normalization of index names, type names, and ids
-
Start differentiating between releases supporting ES6+ and pre-ES6 by releasing from rel3 branch
-
Soon a 4.0.0 release will be cut from master that will be ES6 forward. pre-ES6 will still be supported by downloading 3.x releases from the releases page or directing go get to gopkg.in/rwynn/monstache.v3
-
Technically this release will still work with ES+ but that won't last forever. There are some deprecation warnings. In summary, if you need pre-ES6 use v3.x releases of monstache and v4.x releases of monstache for ES6+ going forward.
monstache v3.6.4¶
-
Trying to set the record for github releases in one night
-
Fix a regression whereby monstache would exit after direct reads were complete when it should have kept tailing the oplog
monstache v3.6.3¶
- Fix for a benign race condition in shutdown, introduced in 3.6.2, that caused a panic
monstache v3.6.2¶
- Resume usage of upstream elastic client library now that fix for Elasticsearch going down has been merged
- When Elasticsearch goes down the elastic client will now put back pressure on Add and Flush calls. When Elasticsearch comes back up it will resume Adding and Flushing were it left off. Do to the blocking nature of Add and Flush the shutdown function of monstache has been refactored to take this into account. Shutdown will not hang if Elasticsearch is down. It will try to Flush pending documents but if this blocks due to a down server it will still exit after a 5 second deadline.
monstache v3.6.1¶
- Added more detailed error logging. Each bulk request line that failed will be logged separately with details. This is much more lightweight than having to turn on verbose to get error details. Verbose is not a recommended setting for production.
monstache v3.6.0¶
- This release focuses on improvements with regards to handling dropped connections to either Elasticsearch or MongoDB and resuming gracefully when they come back online
monstache v3.5.2¶
- The previous release safeguards the integrity of inserts and updates with a version number, but neglected deletes. This release adds versions to deletes such that an [insert, delete] sequence that gets sent to Elasticsearch in 2 different requests (due to
elasticsearch-max-conns
> 1) cannot actually perform a [delete, insert] instead. In this case the insert would now carry a version number < the delete version number and be rejected.
monstache v3.5.1¶
- Fix for issue #37 - out of order indexing due to concurrent bulk indexing requests. With
elasticsearch-max-conns
set to greater than 1 you may get out of order index requests; however after this fix each document is versioned such that Elasticsearch will not replace a newer version with an older one. The version of the document is the timestamp from the MongoDB oplog of when the change (insert, update) occurred. Out of order indexing typically happens when both an insert and an update are queued for a bulk request at around the same time. In this case, do to the way the bulk processor multiplexes requests onto multiple connections, the document may be received out of order.
monstache v3.5.0¶
- Support for sharded MongoDB cluster. See docs for details
- Performance optimizations
- Turn off bulk retries if configured to do so
monstache v3.4.2¶
- Allow the stats index name format to be configurable. Continues to default to index per day.
monstache v3.4.1¶
- Fix for the javascript mapping functions. An Otto Export does not appear to recurse into arrays. Need to do a recursive Export for this scenario.
monstache v3.4.0¶
- Add ability to embed documents during the mapping phase. Javascript plugins get 3 new global functions: findId, findOne, and find. Golang plugins get access to the mgo.Session. See the docs for details.
monstache v3.3.1¶
- Improve support for additional indexing metadata.
- Fix issue where indexing metadata was not honored
monstache v3.3.0¶
- Added optional http server. Enable with --enable-http-server flag. Listens on :8080 by default. Configure address with --http-server-addr :8000. The server responds to the following endpoints (/started, /healthz, /config, and /stats). The stats endpoint is only enabled if stats are enabled. The /started and /healthz endpoints can be used to check for liveness.
- Upgraded the gtm library with performance improvements
monstache v3.2.0¶
- Add systemd support
monstache v3.1.2¶
- Built with go1.9
- Fix golint warnings
monstache v3.1.1¶
- timestamp stats indexes by day for easier cleanup using e.g. curator
monstache v3.1.0¶
- add print-config argument to display the configuration and exit
- add index-stats option to write indexing statistics into Elasticsearch for analysis
monstache v3.0.7¶
- fix elasticsearch client http scheme for secure connections
monstache v3.0.6¶
- fix invalid struct field tag
monstache v3.0.5¶
- add direct-read-batch-size option
- upgrade gtm to accept batch size and to ensure all direct read errors are logged
monstache v3.0.4¶
- fix slowdown on direct reads for large mongodb collections
monstache v3.0.3¶
- small changes to the settings for the exponential back off on retry. see the docs for details.
- only record timestamps originating from the oplog and not from direct reads
- apply the worker routing filter to direct reads in worker mode
monstache v3.0.2¶
- add option to configure elasticsearch client http timout. up the default timeout to 60 seconds
monstache v3.0.1¶
- upgrade gtm to fix an issue where a mongodb query error (such as CappedPositionLost) causes the tail go routine to exit (after which no more events will be processed)
monstache v3.0.0¶
- new major release
- configuration changes with regards to Elasticsearch. see docs for details
- adds ability to write rolling logs to files
- adds ability to log indexing statistics
- changed go Elasticsearch client from elastigo to elastic which provides more API coverage
- upgrade gtm
monstache v2.14.0¶
- add support for golang plugins. you can now do in golang what you previously could do in javascript
- add more detail to bulk indexing errors
- upgrade gtm
monstache v2.13.0¶
- add direct-read-ns option. allows one to sync documents directly from a set of collections in addition to going through the oplog
- add exit-after-direct-reads option. tells monstache to exit after performing direct reads. useful for running monstache as a cron job.
- fix issue around custom routing where db name was being stored as an array
- upgrade gtm
monstache v2.12.0¶
- Fix order of operations surrounding db or collection drops in the oplog. Required the removal of some gtm-options introduced in 2.11.
- Built with latest version of gtm which includes some performance gains
- Add ssl option under mongo-dial-settings. Previously, in order to enable connections with TLS one had to provide a PEM file. Now, one can enable TLS without a PEM file by setting this new option to true. This was tested with MongoDB Atlas which requires SSL but does not provide a PEM file
monstache v2.11.2¶
- Built with Go 1.8
- Added option
fail-fast
- Added option
index-oplog-time
monstache v2.11.1¶
- Built with Go 1.8
- Performance improvements
- Support for rfc7386 JSON merge patches
- Support for overriding Elasticsearch index and type in JavaScript
- More configuration options surfaced
monstache v2.10.0¶
- add shard routing capability
- add Makefile
monstache v2.9.3¶
- extend ttl for active in cluster to reduce process switching
monstache v2.9.2¶
- fix potential collision on floating point _id closes #16
monstache v2.9.1¶
- fix an edge case #18 where a process resuming for the cluster would remain paused
monstache v2.9¶
- fix an issue with formatting of integer ids
- enable option for new clustering feature for high availability
- add TLS skip verify options for mongodb and elasticsearch
- add an option to specify a specific timestamp to start syncing from
monstache v2.8.1¶
- fix an index out of bounds panic during error reporting
- surface gtm options for setting the oplog database and collection name as well as the cursor timeout
- report an error if unable to unzip a response when verbose is true
monstache v2.8¶
- add a version flag -v
- document the elasticsearch-pem-file option
- add the elasticsearch-hosts option to configure pool of available nodes within a cluster
monstache v2.7¶
- add a gzip configuration option to increase performance
- default resume-name to the worker name if defined
- decrease binary size by building with -ldflags "-w"
monstache v2.6¶
- reuse allocations made for gridfs files
- add workers feature to distribute synching between multiple processes
monstache v2.5¶
- add option to speed up writes when saving resume state
- remove extra buffering when adding file content
monstache v2.4¶
- Fixed issue #10
- Fixed issue #11
monstache v2.3¶
- Added configuration option for max file size
- Added code to normalize index and type names based on restrictions in Elasticsearch
- Performance improvements for GridFs files
monstache v2.2¶
- Added configuration option for dropped databases and dropped collections. See the README for more information.
monstache v2.1¶
- Added support for dropped databases and collections. Now when you drop a database or collection from mongodb the corresponding indexes are deleted in elasticsearch.
monstache v2.0¶
- Fixes an issue with the default mapping between mongodb and elasticsearch. Previously, each database in mongodb was mapped to an index of the same name in elasticsearch. This creates a problem because mongodb document ids are only guaranteed unique at the collection level. If there are 2 or more documents in a mongodb database with the same id those documents were previously written to the same elasticsearch index. This fix changes the default mapping such that the entire mongodb document namespace (database + collection) is mapped to the destination index in elasticsearch. This prevents the possibility of collisions within an index. Since this change requires reindexing of previously indexed data using monstache, the version number of monstache was bumped to 2. This change also means that by default you will have an index in elasticsearch for each mongodb collection instead of each mongod database. So more indexes by default. You still have control to override the default mapping. See the docs for how to explicitly control the index and type used for a particular mongodb namespace.
- Bumps the go version to 1.7.3
monstache v1.3.1¶
- Version 1.3 rebuilt with go1.7.1
monstache v1.3¶
- Improve log messages
- Add support for the ingest-attachment plugin in elasticsearch 5
monstache v1.2¶
- Improve Error Reporting and Add Config Options
monstache v1.1¶
- Fixes crash during replay (issue #2)
- Adds supports for indexing GridFS content (issue #3)
monstache v1.0¶
- 64-bit Linux binary built with go1.6.2
monstache v0.8-beta.2¶
- 64-bit Linux binary built with go1.6.2
monstache v0.8-beta.1¶
- 64-bit Linux binary built with go1.6.2
monstache v0.8-beta¶
- 64-bit Linux binary built with go1.6.2
monstache v0.8-alpha¶
- 64-bit Linux binary built with go1.6.2


Established in 1972, Rajdhani Expeller Industries is a familiar and well respected name in the industry. The company began by supplying expeller spares on small scale, especially to oil extraction plants in the Rajasthan region!
We have made rapid strides since then, both in terms of volumes and reach, and now caters to customers in different states across the country!
From 1992, apart from the manufacturing of spares, Rajdhani has also added the production of expellers to its portfolio. In nearly four decades of its existence, RAJDHANI has stayed committed quality & services to its customers, big or small. That is the reason why it stands at a position of strength today, and is poised for even greater growth.
Company is now also eyeing the promising export markets overseas.
President
Marketing Head
Purchase Head
Works Operation
Accounting Head
Owing to the priority to serve quality products, various stringent quality tests are conducted at various levels of production to the final stage of packaging. For fuller assurance of the quality, the products are tested on various quality parameters, under the supervision of our quality control executives, ensuring zero manufacturing defects.


---
layout: page
header-img: "img/mcgill_univ_winter.gif"
---
Jingbo Tian
Ph.D. candidate
Website
Jingbo Tian is currently studying at McGill University for a PhD degree in Smart Transportation. His current research uses machine learning to recognize complex patterns in time-series data and conduct probabilistic forecasting. He is interested in integrating data-driven models with subject matter knowledge across a wide range of areas to produce pragmatic verifiable insights. Jingbo holds a MSc in Operations Research from the Department of Mathematics at Simon Fraser University. He is a voracious reader on a broad variety of topics and a long-time endurance athlete.
Research Interests
- Time series forecasting
- Probabilistic model
Selected Publications


OpenFX DevCommunity
Home
agenda
Presenters
Thank you for attending.
Please share us your Feedback
here
Agenda
Git
What is Git SCM?
Why Git over others?
The Git terminology
Project dev workflow
Install Git Bash on Windows
Trygit tutorial
Hands-on clone and push using Git Bash
Slides
Angular JS session 2
Routing
Service
Factory
Communicating between directives($emit,$broadvast,$on)
Hands-on with example
Slides
Exercise
Presenters
Abhiram
Web Developer
Sodha, Vishwarajsinh
Web Developer
Jayendra Kartheek
Full Stack Engineer
Made with
by
Open FXU Dev Community


You must declare the "history" permission in the extension manifest to use the history API. For example:
{ "name": "My extension", ... "permissions": [ "history" ], ... }
The history API uses a transition type to describe how the browser navigated to a particular URL on a particular visit. For example, if a user visits a page by clicking a link on another page, the transition type is "link".
The following table describes each transition type.
| Transition type | Description |
|---|---|
| "link" | The user got to this page by clicking a link on another page. |
| "typed" | The user got this page by typing the URL in the address bar. Also used for other explicit navigation actions. See also generated, which is used for cases where the user selected a choice that didn't look at all like a URL. |
| "auto_bookmark" | The user got to this page through a suggestion in the UI — for example, through a menu item. |
| "auto_subframe" | Subframe navigation. This is any content that is automatically loaded in a non-top-level frame. For example, if a page consists of several frames containing ads, those ad URLs have this transition type. The user may not even realize the content in these pages is a separate frame, and so may not care about the URL (see also manual_subframe). |
| "manual_subframe" | For subframe navigations that are explicitly requested by the user and generate new navigation entries in the back/forward list. An explicitly requested frame is probably more important than an automatically loaded frame because the user probably cares about the fact that the requested frame was loaded. |
| "generated" | The user got to this page by typing in the address bar and selecting an entry that did not look like a URL. For example, a match might have the URL of a Google search result page, but it might appear to the user as "Search Google for ...". These are not quite the same as typed navigations because the user didn't type or see the destination URL. See also keyword. |
| "auto_toplevel" | The page was specified in the command line or is the start page. |
| "form_submit" | The user filled out values in a form and submitted it. Note that in some situations — such as when a form uses script to submit contents — submitting a form does not result in this transition type. |
| "reload" | The user reloaded the page, either by clicking the reload button or by pressing Enter in the address bar. Session restore and Reopen closed tab use this transition type, too. |
| "keyword" | The URL was generated from a replaceable keyword other than the default search provider. See also keyword_generated. |
| "keyword_generated" | Corresponds to a visit generated for a keyword. See also keyword. |
For examples of using this API, see the history sample directory and the history API test directory. For other examples and for help in viewing the source code, see Samples.


Find your dream home
Search properties
List a property
Apartment
House
Square footage
Price
is no more than
is at least
Apartment
House
Show apartments
Show houses
For rent:
For sale:


| Package | Description |
|---|---|
| py4j | |
| py4j.commands |
| Modifier and Type | Field and Description |
|---|---|
protected static List<Class<? extends Command>> |
GatewayConnection.baseCommands |
protected Map<String,Command> |
GatewayConnection.commands |
| Modifier and Type | Method and Description |
|---|---|
static List<Class<? extends Command>> |
GatewayConnection.getBaseCommands() |
List<Class<? extends Command>> |
GatewayServer.getCustomCommands() |
| Modifier and Type | Method and Description |
|---|---|
protected void |
GatewayConnection.initCommands(Gateway gateway,
List<Class<? extends Command>> commandsClazz)
Override this method to initialize custom commands.
|
| Constructor and Description |
|---|
GatewayConnection(Gateway gateway,
Socket socket,
List<Class<? extends Command>> customCommands,
List<GatewayServerListener> listeners) |
GatewayServer(Object entryPoint,
int port,
int pythonPort,
InetAddress address,
InetAddress pythonAddress,
int connectTimeout,
int readTimeout,
List<Class<? extends Command>> customCommands) |
GatewayServer(Object entryPoint,
int port,
int pythonPort,
int connectTimeout,
int readTimeout,
List<Class<? extends Command>> customCommands) |
GatewayServer(Object entryPoint,
int port,
int connectTimeout,
int readTimeout,
List<Class<? extends Command>> customCommands,
CallbackClient cbClient) |
| Modifier and Type | Class and Description |
|---|---|
class |
AbstractCommand
Abstract base class for commands.
|
class |
ArrayCommand
A ArrayCommand is responsible for handling operations on arrays.
|
class |
CallCommand
A CallCommand is responsible for parsing a call command and calling the
method on the target object.
|
class |
ConstructorCommand
A ConstructorCommand is responsible for calling the constructors of a Java
class.
|
class |
DirCommand |
class |
ExceptionCommand |
class |
FieldCommand
A FieldCommand is responsible for accessing and setting fields of objects.
|
class |
HelpPageCommand
A HelpPageCommand is responsible for generating a help page for a Java object
or Java class.
|
class |
JVMViewCommand
A JVMViewCommand is responsible for managing JVM views: creating views,
adding imports, searching for fully qualified names.
|
class |
ListCommand
A ListCommand is responsible for handling operations on lists (e.g.,
slicing).
|
class |
MemoryCommand
The MemoryCommand is responsible for handling garbage collection requests
from the Python side, i.e., when a java object is no longer used by the
Python program.
|
class |
ReflectionCommand
The ReflectionCommand is responsible for accessing packages, classes, and
static members.
|
class |
ShutdownGatewayServerCommand
The ShutdownGatewayServerCommand is responsible for shutting down the
GatewayServer.
|


I have problem with rasperrypi and the RFM12Pi. I took the
read-to-go SD card image and all goes well but it keeps saying script
is not running you will need to restart cron.
I killed the processes and restarted but no success. One time it went
green but after that it always says reconf cron...and after the reboot there are always two
processes when i run ps -A | grep cron.
Re: raspberrypi&RFM12Pi
When I got emontx on the same group the script seems to be running now/green..so this is ok now.
Re: raspberrypi&RFM12Pi
This can happen if you're not receiving from emontx. Did you check minicom to see your receiving data ok?
Note you may need to stop cron to be able to read minicom first:
Open crontab:
$ sudo nano /etc/crontab
Add # line to start of line
*/1 * * * * root cd /var/www/emoncms/Modules/raspberrypi && php raspberrypi_run.php
Reboot the pi with
$ sudo reboot
Re: raspberrypi&RFM12Pi
Hi
Now I got the temp from emonglcd to emonbase and "peak" power from emontx pulse sensor to emongldc but clock is wrong. How can I have the clock right?
Emonbase id is 15 (code default i think)
I mean that time is not sended to emonglcd.
Thanks.
Re: raspberrypi&RFM12Pi
I've got similar problems with the ready to go image. They seem to appear when de raspberry is updated. My next step is to use the image, not update the raspberry and get the newest versions (emoncms etc.) from github.
keep you posted.
Re: raspberrypi&RFM12Pi
plan worked.
i've used the image
then followed thes steps:
- downloaded the image
- expanded the root partition
- DID NOT UPDATE
- removed the emoncms directory: rm -r -f /var/www/emoncms
- changed directory to www: cd /var/www
- pulled emoncms from github:
git clone git://github.com/emoncms/emoncms.git
- changed directory to emoncms: cd emoncms
- copied the defaul settings to settings: cp default.settings.php settings.php
- changed user to root, password to raspberry en database to emoncms
- changed directpory to Modules : cd Modules
- pulled raspberry form github: git clone https://github.com/emoncms/raspberrypi.git
- logged into emoncms and updated the database (admin tab)
- adjusted the raspberrypi settings
- then back to the SSH session and I used part 12 of the instruction:
$ ps -A | grep cron
to view the current process list$ sudo kill xxx
replacing xxx with the cron process number from the list above, there might be more than one cron running. Repeat this step until all cron processes have been killed.$ ps -A
can be run again to check.$ sudo top
thenkill xxx
where x is the php process number (usually at the bottom of the list, press 'down key' to scroll down).& sudo reboot
- and it worked.
- I think in my case i may have experienced some HF interference as well, after moving the raspberry to a HF friendly place in my home i had less problems with receiving. (it was near my server, wifi router, switch etc.)
hope this helps!
Re: raspberrypi&RFM12Pi
Do you mean that you fixed that cron problem or clock(time) problem? Now I have just time issue in my emongldc.
Re: raspberrypi&RFM12Pi
yep, i've no longer have problems with the cron.


Loading, Styling and Displaying Ordnance Survey Mastermap Data
with Open Source Software
Jo Cook, Astun Technology / @archaeogeek
Starting Point: compressed gz files of Mastermap Data
End Point: Styled Mapping Data useable as vector (PostGIS or WFS) or raster (WMS)
What tools are we going to use?
Definitely...
And possibly...
- QGIS
- MapServer
- OpenLayers
How do these fit together?
Step 1
- Get Loader from GitHub and see the Loader wiki for installation instructions
- Get Dependencies (GDAL and Python via OSGeo4W, and lxml via easy_install)
- Get Data
- Configure the database
- Configure Loader
Step 2
Run Loader
python loader.py loader.config
Examine results in database
Step 3
Connect to PostGIS database using QGIS
Use the mapserver plugin to style data and configure map file, or use the map file included with Loader
Step 4
View data as WMS in QGIS
Deep dive into Loader
It's not just for Mastermap- it can be used for Police neighbourhoods, Land Registry, AddressBase, VectorMapLocal, etc, etc!
It's not just for PostGIS, it can be used for any ogr-supported output
Use gfs and ogr (in Loader.config) for fine-grained control of output format and structure


Hello and welcome! Thank you for visiting my portfolio.
Native to California, I grew up in Altadena. While in high school, I started working at the school library and participated in summer programs that led me to work for the Jet Propulsion Laboratory. It was at this program I started learning about working on computers firstly in Lotus 123. From there it was only natural to learn more!
Over the years, I have enjoyed travel to various countries including Mexico, Canada, Spain, Germany, Switzerland, The Dominican Republic, the Bahamas, Italy, France and Austria. International travel has been an important part of expanding my life experiences as many cultures offer varied perspectives that have helped me to enjoy diversity.
I have had the honor of attending and at the same time working at UCLA since 1987. For 5 years, I worked at UCLA in various positions putting myself through school in Spanish and Linguistics. To this day, I still enjoy speaking Spanish as well as working for UCLA; currently as the Manager of Life Sciences Application Development. My focus over the past years has been as an SQL programmer while my staff work as full stack programmers utilizing Visual Studio.
I look forward to continued learning every day through books, apps such as Duolingo and yes, classes I take including Coding Bootcamp. 2020 promises to be a spectacular year of learning and meeting new people. I hope you’re as enthused as I am!


{% extends "layouts/base.html" %} {% block title %} Documentation {% endblock %} {% block stylesheets %}{% endblock stylesheets %} {% block content %}
iDashboard is a part of our premium Dashboard called iDashboardPro. We are using the famous Bootstrap 4 framework and maintain iOS Design pattern. The technology that we are using is HTML5, CSS3, jQuery and we are using CSS preprocessor SASS. It is super easy to customize and 100% responsive.
It can be used for most types of dashboards and app templates. It has all types of the component which needs for developing any types of web app or website. If you can't see any feature that you need for your project on this free version, definitely you should use iDashboardPro, here we added all kinds of possible features, components, and elements for Dashboard.
iDashboard can be installed using multiple methods. Pick your favorite method from the list below.
npm i idashboard
git clone https://github.com/yookits/idashboard.git
We have own CSS class naming convention that begins with prefix 'yoo-'. Some examples of iDashboard class names would be: yoo-main-header, yoo-sidebarheader, yoo-footer. For this naming convention, you can integrate unlimited 3rd party plugins and resources without worrying about class naming conflicts. However for Bootstrap and other 3rd party plugins class extending we used their own CSS naming format.
We use SASS as a CSS preprocessor. SASS is the most mature, stable, and powerful professional grade CSS extension language in the world.
If don't know SASS coding, don't worry you can directly edit CSS file.
We are creating some global class for easy work.
| Class | Description |
|---|---|
|
yoo-margin-[size] yoo-margin-top-[size] yoo-margin-bottom-[size] yoo-margin-left-[size] yoo-margin-right-[size] |
Margin helper classes where [size] can accept 0 to 15. Example: yoo-margin-0, yoo-margin-top-15 |
|
yoo-padding-[size] yoo-padding-top-[size] yoo-padding-bottom-[size] yoo-padding-left-[size] yoo-padding-right-[size] |
Margin helper classes where [size] can accept 0 to 15. Example: yoo-padding-0, yoo-padding-top-15 |
| yoo-height-b[size] - This is for Larg Screen yoo-height-lg-b[size] - This is for Mobile Screen |
Space helper classes where [size] can accept 0, 5, 10, 15, 20. Example: yoo-height-b10, yoo-height-lg-b20 |
| yoo-font-style-i | Italic Font helper classes. |
|
yoo-text-transform-u yoo-text-transform-l yoo-text-transform-c |
Text transform helper classes. |
| yoo-font-[weight] | Weight helper classes where [weight] can accept light, regular, medium, semi-bold, bold, black. Example: yoo-font-bold |
| yoo-radious[size] | Radious helper classes where [size] can accept 1 to 10. Example: yoo-radious1, yoo-radious10 |
We are using jQeury. All custom jQuery and plugin initialize code are written in iDashboard.js (there is a separate file for chart and svg map initialize) file. And all are function-based. Like if you did not want any JS block you just remove or comment that function.
For SVG Maps, we are creating an svg-map folder. Please take your desired file. We also create an SVG map preview page.
| Function | Description |
|---|---|
| mainMenu() | Initialize Main Menu. |
| mobileMenu() | Initialize Mobile Menu. |
| sideBarHeader() | Initialize Sidebar Menu. |
| stickyHeader() | Initialize Sticky Header. |
| calendarInt() | Initialize Calender Plugin. |
| nicescrollInt() | Initialize Nice Scroll. |
| customToggleInt() | Initialize Custom Toggle Button. |
| bootstrapInt() | Bootstrap Element Initialize |
| checkMark() | For Custome Check Box |
| formField() | For iOS Form Style |
All color comes from SASS variable, if you would like to use your own color pallet, just go to variables.scss file and replace color to your own color. The compiler will change all colors to your color.
After buying if you are facing any issues or you can not understand any part you can request for support. Our dedicated support team will assist you within Two Business Day.


!!Con is back for our sixth year of celebrating the joy, excitement, and surprise of computing, and we want you to submit a talk* proposal. The submission deadline is Sunday, March 3.
Since its launch in 2014, !!Con talks have featured everything from glowing mushrooms to game theory; from machine knitting to geolocation; from live coding on an Apple II to queer feminist cyberpunk manifestos. We’ve had speakers who are programmers, poets, scientists, students, and more!
What’s an idea that delights you? Did you learn something surprising recently? Is there a tool you love that you’ve been telling everyone about? Did you do something with computers that seems impossible or amazing or just really fun? Please take this call for talk* proposals as an invitation to meditate on what you love about computing, and then submit a talk* about one of those things!
The only requirements are that your talk*:
What do we mean by talk* with an asterisk? This year we’re expanding what we consider for !!Con’s 10-minute slots! Send us plays about the joy of computing, musical numbers about a bug you found, a magic show using strace. Whatever you want to do with a ten-minute slot, we’d love to hear about it. Of course, we’re looking forward to seeing good old-fashioned talk proposals as well.
We would especially like to hear from you if:
All talks* will be ten minutes long. Ten minutes isn’t much time, so think carefully about the scope of your talk* and be clear in the timeline about how you plan to spend the time. A single, focused idea is best – go for “here’s my favorite assembly instruction” rather than “here’s an overview of how assembly works”.
The submission deadline is Sunday, March 3. We’ll accept as many amazing talks* as we can. You can submit more than one proposal.
Proposals will be anonymized to avoid bias. Although we ask for your name, email address, and so on in the proposal submission form, only one or two organizers who serve as anonymizers will actually see this information, and they won’t review your proposal. The rest of the organizing team will review your proposal without knowing who you are.


Welcome to MDF!
This is the manual for Masterwork that will guide you through Initial Setup, starting your first fortress, and will provide information about changes and additions the mod has to offer; each section can be seen on the nav-bar on the left side of the page.
Quick References:
Sections under Welcome to MDF! will give you an overview of the features included in Masterwork. You can view the launcher GUI manual, view links to other players forts, and get an introductory view of the different civilizations. This section also includes a quick guide to the new world-gen additions..
Sections under RAW Additions will show you the specific objects added to the game. Creatures, Civilizations, Inorganics, Grass types, Plant types, and the various tilesets can be reviewed in greater detail here.
Sections under Extra Content contains an overview of third-party applications included with Masterwork, as well as links to their respective threads and readme files.
The Playable Civs section gives you an overview of all currently playable civilizations. Each civ offers a unique playstyle and variety of both strengths and weaknesses. It's definitely worth trying them all at least once!
If you'd like to support Meph, the original author of Masterwork Dwarf Fortress, it is possible to do so through the donation link. Please remember that both Masterwork and Dwarf Fortress are both free!
If you have specific questions, feedback, would like to show your support, or have anything you want to share with the community, you can do so on the bay12 Masterwork DF Forums. You might also want to visit the Dwarf Fortress Subreddit, or join us on the Modified Masterwork Dwarf Fortress Discord!


Simple 7 Minute Workout
Jumping Jacks
Wall Sit
Push-ups
Sit-ups
Chair Steps
Squats
Tricep Dips
Plank
High Knees Running
Lunges
Push-ups
Side Plank