# Javascript Node CircleCI 2.0 configuration file | |
# | |
# Check https://circleci.com/docs/2.0/language-javascript/ for more details | |
# | |
# | |
version: 2 | |
jobs: | |
build: | |
docker: | |
# specify the version you desire here |
{ | |
"compilerOptions": { | |
/* Basic Options */ | |
"target": "es5", /* Specify ECMAScript target version: 'ES3' (default), 'ES5', 'ES2015', 'ES2016', 'ES2017','ES2018' or 'ESNEXT'. */ | |
"module": "commonjs", /* Specify module code generation: 'none', 'commonjs', 'amd', 'system', 'umd', 'es2015', or 'ESNext'. */ | |
// "lib": [], /* Specify library files to be included in the compilation. */ | |
// "allowJs": true, /* Allow javascript files to be compiled. */ | |
// "checkJs": true, /* Report errors in .js files. */ | |
// "jsx": "preserve", /* Specify JSX code generation: 'preserve', 'react-native', or 'react'. */ | |
// "declaration": true, /* Generates corresponding '.d.ts' file. */ |
With Solidity 0.4.23 a require
statement seemingly fail if a contract called has a returndatasize
of less than 32. This issue was found when wrapping a transferFrom
function call, which doesn't return anything, in a require
.
Older contracts that use STOP
to return control flow place 1
on the stack through the return of CALL
and so RETURNDATASIZE
is set to 0
. The new require seems to enforce that at least 32
bytes must be returned by the child contract (with RETURNDATASIZE >= 0x20
) which seems to break old contracts that simply check whether the return of CALL
itself was 1
.
The token contract used is Adex.
This issue indicates that any token transfered without a return will fail, affecting any contract using tokens transfers that are wrapped in a require as of solidity v0.4.23
To ensure this really is an issue, we have tried running the code with 2 solidity versions. Essentially wrapping
ASCI art characters for creating diagrams
- ASCII code 191 = ┐ ( Box drawing character single line upper right corner )
- ASCII code 192 = └ ( Box drawing character single line lower left corner )
- ASCII code 193 = ┴ ( Box drawing character single line horizontal and up )
- ASCII code 194 = ┬ ( Box drawing character single line horizontal down )
// This script is meant to import Google Maps starred places into | |
// another Google account. | |
// Given a geoJSON file of Google Maps starred places (places.json) | |
// exported by Google takeout (account backup) this script should | |
// open each place URL and manually click save. | |
// Upon first run, it's best to stop it and manually login to your | |
// Google account otherwise you'll run into a non-verified device | |
// issue. Run again and it should continue through with problems. |
// ==UserScript== | |
// @name New Userscript | |
// @namespace http://tampermonkey.net/ | |
// @version 0.1 | |
// @description try to take over the world! | |
// @author You | |
// @match https://coinmarketcap.com/ | |
// @grant none | |
// ==/UserScript== |
const fs = require('fs') | |
const {sha3} = require('ethereumjs-util') | |
const crypto = require('crypto') | |
const file = fs.readFileSync(__dirname + '/file.png') | |
const keccak256hash = sha3(file).toString('hex') | |
console.log(keccak256hash) | |
const sha256hash = crypto.createHash('sha256').update(file).digest().toString('hex') |