Skip to content

Instantly share code, notes, and snippets.

Avatar

Emilio Rios emilioriosvz

View GitHub Profile
@emilioriosvz
emilioriosvz / getAllPropertiesNames.js
Created Mar 14, 2016
Get all properties names of an object
View getAllPropertiesNames.js
var getAllProperties = function (object) {
var properties = []
do {
Object.getOwnPropertyNames(object).forEach((prop) => {
if (!~properties.indexOf(prop)) {
properties.push(prop)
}
})
} while (object = Object.getPrototypeOf(object))
@emilioriosvz
emilioriosvz / getTypes.js
Last active Jun 29, 2017
function that receive an object and change the values by the type of the key
View getTypes.js
var o = {
'1': 'adios',
'2': 1.5,
'3': true,
'4': [1, 2, 3],
'5': {1: 2}
}
const getTypes = obj => {
return Object.keys(obj).reduce((prev, key) => {
View objectComparator.js
const objectComparator = (a, b) => {
if (a === b) {
return {
changed: 'equal',
value: a
}
}
var value = {}
var equal = true
@emilioriosvz
emilioriosvz / asyncGreater.js
Last active May 10, 2018
Simple example to understand async await
View asyncGreater.js
#!/usr/bin/env node
const getName = name => {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(name)
}, 500)
})
}
View rabbitasyncawait.js
var amqp = require('amqplib')
var open = require('amqplib').connect('amqp://localhost');
const connect = (url = 'amqp://localhost') => {
return new Promise((resolve, reject) => {
amqp.connect(url)
.then(conn => resolve(conn))
.catch(err => reject(err))
})
@emilioriosvz
emilioriosvz / mongoose-connection.js
Created Apr 4, 2018
connect with mongoose using async/await
View mongoose-connection.js
const mongoose = require('mongoose')
mongoose.Promise = Promise
mongoose.connection.on('connected', () => {
console.log('Connection Established')
})
mongoose.connection.on('reconnected', () => {
console.log('Connection Reestablished')
View readline.js
var rl = readline.createInterface({
input: fs.createReadStream(filePath),
crlfDelay: Infinity
})
rl.on('line', async (line) => {
counter += 1
rl.pause()
// some async code
rl.resume()
@emilioriosvz
emilioriosvz / Finiquito.md
Last active May 10, 2018
finiquito or not
View Finiquito.md

RUN

npx https://gist.github.com/emilioriosvz/8ce9745e98276f4a288bad062d6f01b3

View node-targz.js
var fs = require('fs');
var fstream = require('fstream')
var tar = require('tar');
var zlib = require('zlib');
var gzip = zlib.createGzip();
//var deflate = zlib.createDeflate();
var dirSrcName = process.argv[2] || __dirname;
var dirDestName = process.argv[3] || './dir.tar.gz'
var dirDestStream = fs.createWriteStream(dirDestName);
@emilioriosvz
emilioriosvz / README.md
Last active Dec 12, 2018
How to install GDAL 2.3 in Amazon Linux
View README.md
sudo yum -y update
sudo yum install -y https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
sudo yum-config-manager --enable epel
sudo yum -y install make automake gcc gcc-c++ libcurl-devel proj-devel geos-devel
cd /tmp
curl -L http://download.osgeo.org/gdal/2.0.0/gdal-2.3.2.tar.gz
tar -xvzf gdal-2.3.2.tar.gz
cd gdal-2.3.2/
./configure --prefix=/usr/local --without-python
You can’t perform that action at this time.