Matt Bell
1281b25105
commands: Added PostRun function, called on the client
2015-01-23 18:19:40 -08:00
Brian Tiger Chow
fadedf9e68
refactor(core) extract corehttp package
...
PACKAGE DOCUMENTATION
package corehttp
FUNCTIONS
func GatewayOption(n *core.IpfsNode, mux *http.ServeMux) error
func ListenAndServe(n *core.IpfsNode, addr ma.Multiaddr, options
...ServeOption) error
func WebUIOption(n *core.IpfsNode, mux *http.ServeMux) error
TYPES
type ServeOption func(*core.IpfsNode, *http.ServeMux) error
func DaemonOption(cctx commands.Context) ServeOption
2015-01-22 01:08:59 -08:00
Jeromy
feeada0d90
fix fuse mounting issues
...
this time, without loading the private key on every startup
2015-01-19 08:05:52 +00:00
Brian Tiger Chow
b0596cd4ff
rename coreio to coreunix
2015-01-18 14:41:43 -08:00
Brian Tiger Chow
de45277883
doc(core, main)
2015-01-18 14:41:43 -08:00
Brian Tiger Chow
deb1bbe74f
fix(command/init) rm stale comment
2015-01-18 14:41:43 -08:00
Brian Tiger Chow
1291470bf0
use core_io/Add in commands/init/writeWelcomeFile
2015-01-18 14:41:42 -08:00
Brian Tiger Chow
4b5ff960c9
feat(core): use repo.Repo in core constructor
2015-01-18 14:41:42 -08:00
Brian Tiger Chow
884143bf9c
move generic packages to thirdparty (see thirdparty/README.md)
2015-01-18 14:04:45 -08:00
Brian Tiger Chow
6ec20b3574
huh
2015-01-14 03:02:23 -08:00
Brian Tiger Chow
40e41d24f7
feat(fsrepo): protect with a repo lockfile
...
NB: daemon is one spot the repo lock is typically acquired
2015-01-14 03:02:23 -08:00
Brian Tiger Chow
5705ea9859
style(init): -> errRepoExists
...
@jbenet
2015-01-13 03:09:33 -08:00
Brian Tiger Chow
97b865ff6f
fix(init): simpler initialization logic
...
@jbenet this removes everything under the path
2015-01-13 03:09:33 -08:00
Brian Tiger Chow
4aba282379
feat(fsrepo): handle safe Removal
2015-01-13 03:09:33 -08:00
Brian Tiger Chow
80c2e97692
refactor(main): use fsrepo to load config
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
1b700864f9
refactor(repo): all config writes must go through repo
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
405afd2a02
refactor(config, repo): all writes go through FSRepo. next: privatize these
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
c2877b2045
refactor(init, repo): init logs in fsrepo
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
c5da1561b9
check datastore directory when opening the repo for use
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
0d88f70c6e
feat(init): remove datastore path override
2015-01-13 03:09:31 -08:00
Brian Tiger Chow
fa4cfe8da2
refactor(init, fsrepo): go through repo to write to config
2015-01-13 03:09:30 -08:00
Brian Tiger Chow
a2d1e3395e
refactor(init): write config at top level
2015-01-13 03:09:30 -08:00
Brian Tiger Chow
44f3d95c3b
refactor(repo/fsrepo): use repo to check whether config exists
2015-01-13 03:09:30 -08:00
Brian Tiger Chow
5b3164de5c
refactor(repo/config) move config under repo
2015-01-13 03:09:30 -08:00
Juan Batiz-Benet
cac7e025b8
daemon: log error from gateway
2015-01-12 01:31:59 -08:00
Juan Batiz-Benet
4afb4e090f
daemon gateway async
2015-01-12 01:14:32 -08:00
Juan Batiz-Benet
2c83cd5627
daemon: only try gateway addr if there
2015-01-12 01:05:15 -08:00
Juan Batiz-Benet
f215eee3ed
gateway: cleaned up ServeHTTP func
2015-01-12 01:01:22 -08:00
Juan Batiz-Benet
ed41ac27fd
daemon: refactor common parts of serve funcs
2015-01-12 01:01:21 -08:00
Matt Bell
f39f3fe432
cmd/ipfs: Redirect requests to /webui to webui app
2015-01-11 22:15:33 -08:00
Matt Bell
b5300f1d27
cmd/ipfs: Added gateway MIME type resolution
2015-01-11 22:15:33 -08:00
Matt Bell
e25b08231c
cmd/ipfs: Renamed 'ipfsHandler' to 'gatewayHandler'
2015-01-11 22:15:33 -08:00
Matt Bell
cb84a376bd
cmd/ipfs: Added an ipfsHandler constructor
2015-01-11 22:15:33 -08:00
Simon Kirkby
64cb1b6bf8
CR updates
...
replaced H
moved internal errors into function.
Signed-off-by: Simon Kirkby <tigger@interthingy.com>
2015-01-11 22:15:33 -08:00
Simon Kirkby
32823d2085
Static Website serving and listing
...
adds
trailing slash redirection
index.html return
templated directory listing
Signed off : Simon Kirkby <tigger@interthingy.com>
2015-01-11 22:15:33 -08:00
Matt Bell
9119435cb6
cmd/ipfs: Added gateway server to daemon
2015-01-11 22:15:32 -08:00
Brian Tiger Chow
57b3ffa533
feat: new core constructor + config options (Standard, Online, Offline)
2015-01-11 01:23:25 -08:00
Juan Batiz-Benet
e1cde6bc8c
Merge pull request #462 from jbenet/feat/indirect
...
Implement recursive indirect block creation for DAGs
2015-01-06 12:08:28 -08:00
Jeromy
e3cf893616
implement recursive indirect blocks
...
improve efficiency of multilayered indirect blocks
clean up tests
panic cleanup
clean up logic, improve readability
add final root node to the dagservice upon creation
importer: simplified dag generation
test: updated hashes using latest code
@whyrusleeping this is why the sharness tests
were failing: the hashes are added manually to
make sure our generation doesn't change.
cleanup after CR
fix merkledag tests
fix small block generation (no subblocks!)
2015-01-06 19:43:56 +00:00
Juan Batiz-Benet
517d3e99b8
bootstrap addrs: moved parsing around
...
this commit:
* moves parsing of bootstrap peers into config
* moves location of bootstrap addrs into core/commands
* refactor `*BootstrapPeer -> BootstrapPeer
2015-01-06 00:25:17 -08:00
Juan Batiz-Benet
64cb32dadd
disable utp
...
utp is BROKEN!! it causes tests to fail.
2015-01-05 00:16:53 -08:00
Juan Batiz-Benet
cf62f63b58
better daemon + main exit semantics
2015-01-04 00:47:27 -08:00
Juan Batiz-Benet
e21b1f662b
fuse mount lifecycle fixes
...
This commit cleans up how mounting was being done.
It now successfully signals when it is properly mounted
and listen to close signals correctly.
2015-01-04 00:47:27 -08:00
Juan Batiz-Benet
cc0d7c9b57
crypto -> p2p/crypto
...
The crypto package moves into p2p. Nothing in it so far is ipfs
specific; everything is p2p-general.
2015-01-02 08:46:45 -08:00
Juan Batiz-Benet
89f5cd4c94
introducing p2p pkg
...
I think it's time to move a lot of the peer-to-peer networking
but-not-ipfs-specific things into its own package: p2p.
This could in the future be split off into its own library.
The first thing to go is the peer.
2015-01-02 08:46:45 -08:00
Juan Batiz-Benet
c84a714b16
peer change: peer.Peer -> peer.ID
...
this is a major refactor of the entire codebase
it changes the monolithic peer.Peer into using
a peer.ID and a peer.Peerstore.
Other changes:
- removed handshake3.
- testutil vastly simplified peer
- secio bugfix + debugging logs
- testutil: RandKeyPair
- backpressure bugfix: w.o.w.
- peer: added hex enc/dec
- peer: added a PeerInfo struct
PeerInfo is a small struct used to pass around a peer with
a set of addresses and keys. This is not meant to be a
complete view of the system, but rather to model updates to
the peerstore. It is used by things like the routing system.
- updated peer/queue + peerset
- latency metrics
- testutil: use crand for PeerID gen
RandPeerID generates random "valid" peer IDs. it does not
NEED to generate keys because it is as if we lost the key
right away. fine to read some randomness and hash it. to
generate proper keys and an ID, use:
sk, pk, _ := testutil.RandKeyPair()
id, _ := peer.IDFromPublicKey(pk)
Also added RandPeerIDFatal helper
- removed old spipe
- updated seccat
- core: cleanup initIdentity
- removed old getFromPeerList
2014-12-23 08:33:32 -08:00
Markus Amalthea Magnuson
dbefedbb2e
Fix typo.
...
”configurationx” -> ”configuration”
2014-12-14 20:55:29 +01:00
Juan Batiz-Benet
e7edeca392
added log.Events to secio
2014-12-12 03:29:09 -08:00
Juan Batiz-Benet
5b142948ab
seccat (to test sio)
2014-12-12 02:45:23 -08:00
Juan Batiz-Benet
ac2be0b68b
util/log: SetDebugLogging
2014-12-12 02:45:22 -08:00
Brian Tiger Chow
fb45e7b7fb
fix: name
...
editing in the browser here goes nothing
2014-12-09 15:27:02 -08:00
Brian Tiger Chow
c2c95d1105
start threading context through the system
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-09 07:11:48 -08:00
Brian Tiger Chow
6780228765
fix: seed the random number generator
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-09 00:06:53 -08:00
Brian Tiger Chow
bd685045c8
fix: uranus and saturn IP addresses
...
Mistake: Saturn referred to the NY node and vice versa.
Correction: Fittingly, Uranus is in NY and _S_aturn is _S_ingapore.
I'll have to reboot the testnet to rectify the changes.
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-08 23:19:52 -08:00
Brian Tiger Chow
af01e0a53c
add names
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-07 17:45:49 -08:00
Brian Tiger Chow
7ea2b2d80e
feat(bootstrap!) add saturn, neptune, pluto, uranus
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-12-07 17:07:15 -08:00
Jeromy
e8536db351
make bitswap sub-RPC's timeout (slowly for now)
2014-12-05 20:53:33 +00:00
Jeromy
514b26e2b8
remove sigquit from handled signals
2014-12-05 20:53:33 +00:00
Brian Tiger Chow
8d6f2ed0bc
chore(main) move logging statement to more appropriate place
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-27 17:06:20 -08:00
Brian Tiger Chow
9e6177ef2e
log(main) add log event for executing pre-command hooks
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-25 06:16:39 -08:00
Brian Tiger Chow
b5dc686fda
feat(main) create root context
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-25 06:16:39 -08:00
Matt Bell
706ebe8d24
daemon: Set allowed API origins in API_ORIGIN environment variable
2014-11-25 06:12:35 -08:00
Brian Tiger Chow
90ed148209
fix(eventlog) apply settings upon initialization
...
This commit applies the logging settings to the logging system upon
initialization `ipfs init` and `ipfs daemon --init`.
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-24 16:05:51 -08:00
Brian Tiger Chow
4d497f1c6e
refactor(repo) mv ConfigureLogger to repo package
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Conflicts:
cmd/ipfs/main.go
2014-11-24 16:05:51 -08:00
Brian Tiger Chow
2c38487eb0
fix(eventlog) configure logging if repo is initialized
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-24 16:05:51 -08:00
Christian Couder
8b8b6ce9e2
Remove dot and slash before files in cmd/ipfs/.gitignore
...
It looks like files are not ignored when they are listed
starting with ./ in a .gitignore file.
At least this is true for me on Linux for the "ipfs"
binary in "cmd/ipfs/.gitignore".
License: MIT
Signed-off-by: Christian Couder <chriscool@tuxfamily.org>
2014-11-22 21:55:12 +01:00
Jeromy
34da5f039c
log formatting (info -> infof)
2014-11-21 03:54:26 +00:00
Juan Batiz-Benet
a1dcbbad80
init: note about addrs
2014-11-20 09:15:48 -08:00
Juan Batiz-Benet
1a5cb300cb
config: swarm is list of addrs
2014-11-20 09:14:48 -08:00
Juan Batiz-Benet
43452fdeb7
updated multiaddr + multiaddr-net
...
I broke out multiaddr/net to its own package so
that multiaddr parsing could remain lean. multiaddr-net
will vendor special implementations of protocols (like utp)
2014-11-20 00:58:48 -08:00
Juan Batiz-Benet
a7d1fd42d8
updating daemon addr output
2014-11-18 08:19:25 -08:00
Brian Tiger Chow
e12edd2053
fix(daemon) ensure IPFS is initialized before starting the daemon
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-18 06:42:44 -08:00
Juan Batiz-Benet
5aaa45db9a
transitioned ipfs2 -> ipfs
2014-11-18 06:15:00 -08:00
Juan Batiz-Benet
ad3f3e003f
removed old commands files
...
https://www.youtube.com/watch?v=kyFyAqLtHq8
2014-11-18 06:15:00 -08:00
Juan Batiz-Benet
2b32e698d0
remove ipfs2 from gitignore
2014-11-18 06:15:00 -08:00
Juan Batiz-Benet
f43954fcd1
ensure node constructed is online for daemon
2014-11-18 05:20:04 -08:00
Juan Batiz-Benet
d3c9c5978e
remove daemon node constructor
2014-11-18 03:47:28 -08:00
Matt Bell
7a4491ada3
Added --mount flag to mount when running 'ipfs daemon'
2014-11-18 03:31:32 -08:00
Matt Bell
d1f1d2f5bf
core/commands2: Fixed commands to use string arguments
2014-11-18 02:13:55 -08:00
Juan Batiz-Benet
eba0599dd2
bugfix: node teardown is the last man to go down
...
Warning: during normal execution node teardown must be the
last thing that happens because command requests return
io.Readers, which may still be constructing or processing
their output. The node (and its subservices) is needed for
this. good night and good luck.
2014-11-17 23:13:18 -08:00
Brian Tiger Chow
8d4c21694c
fix
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 22:36:19 -08:00
Brian Tiger Chow
7cebc3cc38
inline prints
...
looking forward to fixing these again
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 22:36:19 -08:00
Brian Tiger Chow
ef65bb1ce3
revert to debug error
...
@jbenet
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
bc396610de
fix(2/daemon) initialized --> init
...
@jbenet
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
061200452f
feat(2/daemon) --initialized
...
@jbenet
now, ipfs can be built and executed in one step:
```
docker run jbenet/go-ipfs daemon --initialized
```
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
2bbfe4d56f
debug(core, datastore, daemon) wrap errors
...
@jbenet @whyrusleeping @mappum
very helpful for tracking down errors. the stack traces are only
shown when debug mode is visible. They function best when caught at the
source.
I propose we use this errors package as a drop-in replacement for
fmt.Errorf and errors.New in all of our code, and use errors.Wrap for
external errors as they emerge from others' libraries.
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
d0a3f9ba9a
feat(2/init) expose init with defaults
...
will support daemon initialization
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
6a380ff532
refactor(2/init) use util.FileExists
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
c883f7dc36
refactor(2/init) extract const
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-17 22:36:18 -08:00
Brian Tiger Chow
81f5d6fd5f
debug(2/ipfs) make cmdDetails loggable
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-17 22:36:17 -08:00
Brian Tiger Chow
cf8fb87df1
refactor(errors) debugerror -> errors
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-17 00:44:18 -08:00
Brian Tiger Chow
c4ea0b78ba
fix(2/init) msg
...
@jbenet i presume you prefer it without the period
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 08:28:08 -08:00
Brian Tiger Chow
c8c062fe13
refactor(config/init) add hooks to identity generation. useful for displaying messages to the user
...
@jbenet this commit re-introduces the peer identity line. It's very
useful. I understand it may have been removed because of the clashing of
the IDs. To alleviate this, this commit places some negative space
between the two lines.
'to test' -> 'to get started' as a stronger call to action
```
λ. ipfs2 init -f
initializing ipfs node at /Users/btc/.go-ipfs
generating key pair...done.
peer identity: QmWzjxNEYKjDAxuHJqvtLP1dZTDjreBSUsArWoHai1v9yP
to get started, enter: ipfs cat QmYpv2VEsxzTTXRYX3PjDg961cnJE3kY1YDXLycHGQ3zZB
```
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 08:13:26 -08:00
Brian Tiger Chow
1c4c7412b4
fix(misc) address PR comments
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:40:05 -08:00
Brian Tiger Chow
02d8da09ae
fix(2/init) message displayed during init
...
TODO use a writer to get the command output
resulting appearance:
```
go-ipfs (feat/machine-readable-logging) λ. make install_2; ipfs2 init -f
cd cmd/ipfs2 && go install
initializing ipfs node at /Users/btc/.go-ipfs
generating key pair...
peer identity: %s QmcPLgrqfvnneJ3vr3oGpkTiS9Psx8p3HxevjnoZYToDRm
```
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:01:01 -08:00
Brian Tiger Chow
6fec76d93e
fix(imports) misc
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
25c98e8e61
refactor(eventlog) elog -> eventlog
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
ac69aba561
feat(2/main) configure event logger
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
be62b76516
refactor(2/main) use debugerror
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
3a927cbcec
feat(init) init logs upon config initialization
...
TODO allow user dir override
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
Signed-off-by: Brian Tiger Chow <brian.holderchow@gmail.com>
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
d28c9cc7b4
refactor(init) extract initCheckDir function
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
# TYPES
# feat
# fix
# docs
# style (formatting, missing semi colons, etc; no code change):
# refactor
# test (adding missing tests, refactoring tests; no production code change)
# chore (updating grunt tasks etc; no production code change)
2014-11-16 07:01:00 -08:00
Brian Tiger Chow
4cadbc1673
style rename for clarity
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:00:59 -08:00
Brian Tiger Chow
15f850f08c
refactor(2/main) helper methods for details object
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:00:59 -08:00
Brian Tiger Chow
55896a86d6
logs(2/main) place log statements approppriately
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:00:59 -08:00
Brian Tiger Chow
2c88e342db
feat(elog) implement event logger
...
a wrapper around the util.Logger
metadata is loggable
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 07:00:58 -08:00
Brian Tiger Chow
57689ffc2b
fix(2/version) make it possible to execute before init
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-16 03:20:10 -08:00
Juan Batiz-Benet
e290b54d9e
Merge pull request #351 from jbenet/mount-fixes
...
Mount, Daemon, and Signal Handler Fixes
2014-11-16 02:40:31 -08:00
Juan Batiz-Benet
4ac6db9a24
ipfs1/mount: text + unmounting
2014-11-16 02:35:13 -08:00
Juan Batiz-Benet
13c390b0b5
fix ipfs1 mount so it will compile
2014-11-16 02:30:29 -08:00
Juan Batiz-Benet
705465db8b
main + daemon signal handlers
...
This commit changes the signal handler to be added once
the command is executing. this is because the daemon
has its own signal handler, that must try to shut down
the node gracefully first. You know, just in case.
2014-11-16 02:22:43 -08:00
Juan Batiz-Benet
99f2378bac
mount: fixed mount init + teardown
...
This commit adds a Mount abstraction (which is really just
a wrapped context closer). It makes sure to bind the mount
to the fate of the Node (i.e. close it if the node ends).
This fixes #350
2014-11-16 01:42:42 -08:00
Juan Batiz-Benet
61c1e39a51
Merge pull request #266 from jbenet/defaulthash
...
add in a default file hash and cleaned up init function a bit
2014-11-16 00:21:18 -08:00
Juan Batiz-Benet
ab09c3649c
defaulthash: let's not ignore errors
...
@maybebtc fixed it. cc @whyrusleeping
2014-11-15 22:55:58 -08:00
Juan Batiz-Benet
7596bcce2d
cleaned up ipfs init
2014-11-15 22:50:42 -08:00
Juan Batiz-Benet
7806973e67
vendor manners
2014-11-15 22:21:52 -08:00
Juan Batiz-Benet
8cf765af33
daemon: listen for term signals
2014-11-15 22:11:11 -08:00
Jeromy
e857a5bc9f
move default hash into ipfs2, committed on freemont troll
2014-11-15 18:28:54 -08:00
Jeromy
ab805f3382
add in a default file hash and cleaned up init functiona bit
2014-11-15 17:50:05 -08:00
Juan Batiz-Benet
3df1513ea6
cmds: fixed help stdio use
2014-11-15 09:04:49 -08:00
Brian Tiger Chow
162169af77
fix(2/main) respect IPFS_LOGGING == debug behvaior
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-15 02:10:53 -08:00
Brian Tiger Chow
e940643f20
docs
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-15 01:00:09 -08:00
Brian Tiger Chow
56d732f9b1
fix(2/main) s/preemptsUpdates/preemptsAutoUpdate
...
addresses...
https://github.com/jbenet/go-ipfs/pull/336#discussion_r20397834
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-15 00:39:28 -08:00
Brian Tiger Chow
408fadc8be
fix(2/main) don't check for updates when running init
...
@jbenet @mappum
Yeah, there's some duplicated work. But there's also a separation of
concerns. In one case, we check to determine where the command should
run. In the other case, we check to determine which hooks should run.
Having these actions separated reduces complexity in a nice way.
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 17:04:54 -08:00
Brian Tiger Chow
eb5bb1daa8
feat(debugerror)
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
impl errorf
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
return a debug error
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 17:04:48 -08:00
Brian Tiger Chow
ee378e2fbd
fix(test) tour content struct now exists
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:31:06 -08:00
Juan Batiz-Benet
fa8fc1aefc
cmds2: check for updates
2014-11-14 03:20:46 -08:00
Matt Bell
1abe97617e
main: Pass Stdin to CLI request parser
2014-11-14 03:20:11 -08:00
Brian Tiger Chow
8b07b35467
ignore binary
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:09 -08:00
Juan Batiz-Benet
e0ba14c0eb
cmds2: use cmdDetails on level cmds
2014-11-14 03:20:09 -08:00
Brian Tiger Chow
0eeed7cc68
add string method to command details
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:09 -08:00
Brian Tiger Chow
65eb1d86fa
rm todos
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:08 -08:00
Brian Tiger Chow
476aab9552
rm unused tests
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:08 -08:00
Brian Tiger Chow
1065ae45aa
s/number/id "the id of the topic you'd like to tour"
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:08 -08:00
Brian Tiger Chow
f1c20b4e3a
don't use the marshaler
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:08 -08:00
Brian Tiger Chow
35da357dc5
fix(tour) patch up and verify tour output
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
c99e9e6000
feat(details) add funcs to negate negations
...
not immediately useful, but nice to have
tagging you to make sure i didn't make a mistake here @jbenet
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
5c4fa5a783
feat(tour) show list of topics when user tries to view topic that doesn't exist
...
eg.
```
ipfs2 (cmd-ref-part2) λ. go build ./...; ./ipfs2 tour 0
Tour 0 - Hello Mars
Hello Mars
ipfs2 (cmd-ref-part2) λ. go build ./...; ./ipfs2 tour 10
ERROR
no topic with id: 10
TOPICS
0 - Hello Mars
0.1 - Hello Mars 2
```
2014-11-14 03:20:07 -08:00
Juan Batiz-Benet
afa5eedb44
cmds2: commandShouldRunOnDaemon
...
This commit adds the pretty-complicated decision function
to check whether a command should run on the daemon.
@maybebtc @mappum double check the logic?
2014-11-14 03:20:07 -08:00
Juan Batiz-Benet
bb8d4ebd6b
cmds2: cmdDetailsMap
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
ca2828f33c
feat(commands) add ClientError(msg) helper and use it to return a fancy error to the client in the tour
...
@jbenet this exists now
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
c5e75f91a6
tests(2/main) errClient
...
Discovered this quirk about interfaces.
@whyrusleeping
@mappum
@jbenet
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:07 -08:00
Brian Tiger Chow
0a93f9d764
style(tour) newline at the end
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:06 -08:00
Matt Bell
db361d9403
commands/cli: Made Parse return an error if request has unrecognized options
2014-11-14 03:20:06 -08:00
Matt Bell
815efdb125
daemon: Added a ShortDescription
2014-11-14 03:20:06 -08:00
Brian Tiger Chow
ff6c4ce6a4
test(tour) ensure template renders without failure
...
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:06 -08:00
Juan Batiz-Benet
047d2e2d62
cmd2: Marshaller -> Marshaler (see golang/encoding)
...
Also:
- map[cmds.EncodingType]cmds.Marshaller -> MarshalMap
cc @mappum @maybebtc
2014-11-14 03:20:05 -08:00
Matt Bell
c973776049
main: Fixed logical error in remote/local check
2014-11-14 03:20:05 -08:00
Matt Bell
e700b16576
Ported remaining command helptext to HelpText struct
2014-11-14 03:20:05 -08:00
Matt Bell
b4735eb10b
main: Test if commands are local-only when choosing daemon vs. local
2014-11-14 03:20:04 -08:00
Matt Bell
188bf779db
Removed cmdInvocation.root
2014-11-14 03:20:03 -08:00
Matt Bell
9afb85714a
commands/cli: Don't return root in Parse
2014-11-14 03:20:03 -08:00
Matt Bell
b7b15b8b30
cmd/ipfs2: Added isLocal function for testing if a command is local only
2014-11-14 03:20:03 -08:00
Matt Bell
2dd6f24157
core/commands2: Refactored some commands to HelpText struct for helptext fields
2014-11-14 03:20:03 -08:00
Matt Bell
2fd8f39c65
cmd/ipfs2: Added comments to explain purpose of CLI root
2014-11-14 03:20:03 -08:00
Juan Batiz-Benet
7daf888902
cmds2: handle error return codes
2014-11-14 03:20:03 -08:00
Juan Batiz-Benet
d18902df27
cmds2: changed how the ctx.Node works
2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
3352aeee15
cmds2: fixed show help on root + noncallable
2014-11-14 03:20:02 -08:00
Juan Batiz-Benet
f738e899c2
cmd2: simplified main
...
Attention @maybebtc @mappum
I cleaned up + simplified the main flow. Now, all printing
is contained inside main itself! (:cheer:). I do this with
the help of a cmdInvocation struct that has both
a Parse and Run. The only major clunkiness left is that the
"CallCommand" is still its own function. But *shrug*.
Please test it works as we would expect. i changed much of
the flow, so likely that i missed a complicated edge case.
main roadmap:
- parse the commandline to get a cmdInvocation
- if user requests, help, print it and exit.
- run the command invocation
- output the response
- if anything fails, print error, maybe with help
2014-11-14 03:20:02 -08:00
Matt Bell
092524fcbb
cmd/ipfs2: Added a 'commands' command for CLI root
2014-11-14 03:20:01 -08:00
Matt Bell
fd8b1930af
cmd/ipfs2: Copy subcommands from core/commands2 root into cmd/ipfs2 root
2014-11-14 03:20:01 -08:00
Brian Tiger Chow
4e740f63eb
docs(ipfs2/main)
...
@mappum
License: MIT
Signed-off-by: Brian Tiger Chow <brian@perfmode.com>
2014-11-14 03:20:01 -08:00
Brian Tiger Chow
22a4cc7d30
fix(ipfs2) output info to logger when checking daemon status
2014-11-14 03:20:01 -08:00
Juan Batiz-Benet
a2d06b5f9a
cmds2: errHelpRequested error
2014-11-14 03:20:01 -08:00
Matt Bell
78bc748342
cmd/ipfs: Fixed bug where handleParseError sets error to nil
2014-11-14 03:19:59 -08:00
Juan Batiz-Benet
ec8be23cbc
cmds/main decomposed handleParseError
2014-11-14 03:19:59 -08:00
Brian Tiger Chow
7060e7dfe2
rename variable
2014-11-14 03:19:58 -08:00
Brian Tiger Chow
fed2f8d2c6
fix(2/main) option value signature
2014-11-14 03:19:58 -08:00
Brian Tiger Chow
013d98a35a
fix(2/init, 2/add) fix optionvalue signature
2014-11-14 03:19:58 -08:00
Matt Bell
7a505b44c7
Handle -h and --help differently (short text vs long text)
2014-11-14 03:17:42 -08:00
Matt Bell
c76a52e422
cmd/ipfs2: Show short help text instead for usage errors
2014-11-14 03:17:42 -08:00
Matt Bell
4970d8b5a3
commands/cli: Use template for helptext generation
2014-11-14 03:17:41 -08:00
Matt Bell
e23b537f32
Override root command help text
2014-11-14 03:17:41 -08:00
Matt Bell
b358bb3ffd
cmd/ipfs2: Added comment to explain default encoding logic
2014-11-14 03:17:40 -08:00
Matt Bell
aea2fce987
cmd/ipfs2: Added explanation comment to ipfsHandler
2014-11-14 03:17:40 -08:00
Matt Bell
4902361fd5
cmd/ipfs2: Updated readme
2014-11-14 03:17:40 -08:00
Matt Bell
c468a4dbf5
core/commands2: Use Argument constructors in commands
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
8b14012bba
refactor(ipfs2/main) rm exit
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
ad5ad912ce
refactor(ipfs2/main) use guard
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
74b38cb65f
refactor(ipfs2/main) change the way we handle profiling
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
d72af9c910
refactor(ipfs2/main) return err
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
9268bdd56e
refactor(ipfs2/main) replace with equivalent action
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
fa5ca3f27f
refactor(ipfs2/main) output response
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
cda68a19d0
refactor(ipfs2/main) return err
2014-11-14 03:17:39 -08:00
Brian Tiger Chow
13a90537d6
refactor(ipfs2/main)
...
* bring debug checking back to top level so we have more control over
CPU profiling.
* bring help text up to top level so we can exit from the program
at the top level instead of within an arbitrary function
2014-11-14 03:17:38 -08:00
Brian Tiger Chow
2473d2d720
refactor(ipfs2/main) same for debug
2014-11-14 03:17:38 -08:00
Brian Tiger Chow
28be8a6171
refactor(ipfs2/main) check err before
2014-11-14 03:17:38 -08:00
Brian Tiger Chow
f79f1267f7
refactor(ipfs2/main) split lines
2014-11-14 03:17:38 -08:00
Brian Tiger Chow
203a0723ba
refactor(ipfs2/main) return errors in main
2014-11-14 03:17:38 -08:00
Matt Bell
17c5923160
core/commands2: Fixed init option definition
2014-11-14 03:17:38 -08:00
Matt Bell
3e507f7c9f
commands: Changed option accessor API (Request#Option now returns an OptionValue)
2014-11-14 03:17:38 -08:00
Matt Bell
d700a2ce87
cmd/ipfs2: Cleaned up main option checking (no longer need temporary Request)
2014-11-14 03:17:37 -08:00
Matt Bell
8ee3e996cc
core/commands2: Use Option constructors in commands
2014-11-14 03:17:37 -08:00
Matt Bell
3e30093c2b
core/commands2: Updated commands to new Run function API
2014-11-14 03:17:37 -08:00
Brian Tiger Chow
f4d0b8baa0
clarity(util) ToReaders -> CastToReaders
2014-11-14 03:17:36 -08:00
Brian Tiger Chow
38a6d0ead0
fix(init) version
2014-11-14 03:17:36 -08:00
Brian Tiger Chow
8ffd27a6e1
fix(init) inline bootstrap peers
2014-11-14 03:17:36 -08:00
Matt Bell
b3ea49954a
cmd/ipfs2: Handle SIGTERM
2014-11-14 03:17:35 -08:00
Matt Bell
cc519c47a3
cmd/ipfs2: Ensure process exits smoothly
2014-11-14 03:17:35 -08:00
Matt Bell
35983b480a
cmd/ipfs2: Made '/ipfs' handler return more accurate HTTP response codes, resolves #287
2014-11-14 03:17:35 -08:00
Matt Bell
897e0f869f
cmds/ipfs2: Added '/ipfs' HTTP handling
2014-11-14 03:17:35 -08:00