Giter VIP home page Giter VIP logo

wrench's People

Contributors

jayeheffernan avatar nightrune avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Forkers

jayeheffernan

wrench's Issues

Create a master "imp/agent.nut" and "imp/device.nut"

These files should #define IMP_AGENT and IMP_DEVICE

These should be included so that a single library file can have device code and agent code as well. Implementers can then use this to share code between the two, but could still including different files as well.

Dynamically generated #define values

A feature that Imp hasn't implemented yet is a way of accessing the model name/number and build number in Squirrel code. wrench could add these and other values like it as a dynamically generated #define's that could be accessed in the code. Other more basic ones could be a date string / time stamp of the build time.

Build API Entities

Add support for Build Entities using golangs built in json interpreter and structs for golang.

settings.wrench file created when none exists

When you run wrench in a random directory (not the project's main directory) wrench creates a settings.wrench file. I assume this is designed to help you by creating a template but instead it just makes a mess.

Build & Run

It would be great to have a single build and run command.

Squirrel Integration with Go

To fully support testing device code we need to embed the squirrel vm into go. This would allow us to test deep sleep wakeup behavior as well as nvram behavior.

Git Support for Libraries

Build in git support to go for pulling libraries down into our libs folder. We could either use an external process or build support straight in. This would also need to define a structure for libraries that use it. It should probably be modeled off of golang. And it would likely be local to each setting file.

New setting: delete generated files

A boolean flag (which defaults to false?) in the settings.wrench file that would enable the automatic deletion of the generated output files after successfully uploading them to imp.

Date format in logs

Is it possible to change the date format to something local and simpler?

From 2016-01-15T10:35:33.518+00:00 to 2016-01-15 21:35:33

Add Support for the Blob Library

Base squirrel didn't off the library it needs to be included when the vm is initialized. Add support for the blob library inside wrench.

Crash after being put to sleep

I closed my laptop without shutting down wrench logs ... it wasn't too happy about that.

panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x10 pc=0x407c6aa]

goroutine 1 [running]:
github.com/nightrune/wrench/ei.(*BuildClient)._complete_request(0xc20801e500, 0x4335530, 0x3, 0xc2082cf110, 0x65, 0x0, 0x0, 0x0, 0x0, 0x0, ...)
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/ei/ei.go:163 +0x21a
github.com/nightrune/wrench/ei.(*BuildClient).ContinueDeviceLogs(0xc20801e500, 0xc208229180, 0x47, 0x0, 0x0, 0x0, 0x0, 0x0)
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/ei/ei.go:458 +0x16e
main.StartDeviceLogging(0xc20801e500, 0x7fff5fbffbf9, 0x10)
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/device.go:49 +0x52b
main.DeviceSubCommand(0x44b0ca0, 0xc20800a010, 0x3, 0x3)
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/device.go:122 +0x466
main.main()
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/wrench.go:209 +0xa39

goroutine 5 [syscall, 148 minutes]:
os/Signal.loop()
    /opt/local/go/src/os/signal/signal_unix.go:21 +0x1f
created by os/Signal.init·1
    /opt/local/go/src/os/signal/signal_unix.go:27 +0x35

goroutine 6 [chan receive, 148 minutes]:
main.func·004()
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/wrench.go:187 +0x55
created by main.main
    /Users/me/Sites/go.home/src/github.com/nightrune/wrench/wrench.go:191 +0x353

goroutine 17 [syscall, 148 minutes, locked to thread]:
runtime.goexit()
    /opt/local/go/src/runtime/asm_amd64.s:2232 +0x1

New command: restart <deviceid>

When you upload a new model the devices and agents are not restarted. A "restart " command is pretty critical.

An additional useful feature to this command would be a "-l" flag to enable logging immediately after the restart.

Build API Authorization

Add build authorization for the Golang Build API. This should use the key from the .wrench settings file.

Mocking Library for Squirrel

The mock library should have primities to allow testing of any aspect of squirrel and support for expected calls and number of calls.

Installation notes for Mac OSX

I had to install on a different OSX machine today so I noted down the exact steps required for installation.

sudo port install gpp
sudo port install go

mkdir ~/Documents/go.home
cd ~/Documents/go.home
export GOPATH=~/Documents/go.home

go get github.com/nightrune/wrench

cd src/github.com/nightrune/wrench/squirrel/
tar xvfz ~/Downloads/squirrel_3_0_7_stable.tar.gz
cd SQUIRREL3
make

cd ../..
go build

ls -l wrench

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.