Jason R. Coombs
160f2b9628
Add TODO reflecting transient state of the check.
2020-08-24 11:46:48 -04:00
Jason R. Coombs
8b553d2045
Add Python 3 compatibility for code paths relevant to 'tahoe --version'.
2020-08-21 19:55:34 -04:00
Jason R. Coombs
2d29265d71
Bypass Python 3 check when running under tox.
2020-08-21 19:55:34 -04:00
Itamar Turner-Trauring
2cc2cb6a7f
Rename to_str() to the more accurate to_bytes().
2020-08-14 13:49:48 -04:00
meejah
1549e7eb18
simplify (for line in f.readlines() -> for line in f)
2020-05-06 15:16:34 -06:00
meejah
4c3d0ea6cc
use 'with open' for more file-opens
2020-05-04 21:59:15 -06:00
meejah
4b0c730adf
use 'with open' correctly
2020-05-04 21:59:15 -06:00
meejah
c385e958a8
Merge branch 'master' into ticket3252-port-web-directory.remaining.1
2020-04-23 12:24:00 -06:00
meejah
018e161f19
don't allow trailing slashes
...
This makes /uri/xxx URIs invalid if they have a trailing slash.
It seems that the former Nevow implementation would allow this, and
some tests (and, notable, "tahoe backup") did rely on using URIs
of this style.
2020-04-18 01:52:18 -06:00
Jean-Paul Calderone
ef73e18f3d
Remove the greater part of the implementation
2020-02-13 10:43:50 -05:00
Jean-Paul Calderone
6d83b9c1e1
remove "tahoe rm"
2020-01-17 09:14:36 -05:00
Jean-Paul Calderone
f134f77f2e
deprecate start, stop, restart, daemonize
2020-01-15 14:21:29 -05:00
Jean-Paul Calderone
173a9a5256
Factor process management scripts so "run" does not depend on "daemonize"
2020-01-15 14:19:26 -05:00
Jean-Paul Calderone
1cbe21b899
start to deprecate the daemonization-related commands
2020-01-15 13:54:01 -05:00
Jean-Paul Calderone
21bf7fc25c
Merge remote-tracking branch 'origin/master' into integration/storage-economics
2019-08-16 15:39:31 -04:00
Jean-Paul Calderone
3d2d61f853
Merge remote-tracking branch 'origin/master' into 3239.python2-new-style-regression-test
2019-08-13 18:27:23 -04:00
Jean-Paul Calderone
b7e3633056
Fix a lot of classic classes in Tahoe-LAFS
2019-08-13 16:55:40 -04:00
Jean-Paul Calderone
13409a2449
Move the remaining package checking machinery to its own module.
2019-08-13 15:11:01 -04:00
meejah
eb0a582d1c
add a --helper command-line option to 'tahoe create-node'
2019-08-08 17:41:57 -06:00
meejah
0f6002b935
raise not except
2019-08-07 14:08:23 -06:00
meejah
358f0c9ead
error if --coverage but no coverage package
2019-08-07 13:59:40 -06:00
meejah
3b3626244e
cleanup
2019-08-07 12:39:29 -06:00
meejah
8e4b05214a
add --coverage for integration tests
2019-08-06 16:47:43 -06:00
Jean-Paul Calderone
deb3109f43
please report all errors
2019-08-03 06:19:01 -04:00
meejah
dd55accec8
Merge branch 'master' into 3031-replace-pycryptopp
2019-06-26 14:42:43 -06:00
Jean-Paul Calderone
3c7ab91f07
Replace the monkey-patching with attributes on instances
2019-06-26 10:59:39 -04:00
meejah
47ccdb0177
refactor ed25519 helpers to functional style
...
eliminates the wrapper classes and uses some more-explicit
names throughout (e.g "sk" -> "signing_key")
2019-06-13 22:19:28 -06:00
meejah
f261db7018
whitespace
2019-06-13 22:19:28 -06:00
heartsucker
9e31bfe2f4
update code/test to use new ed25512 module
2019-06-13 22:19:28 -06:00
tpltnt
c8f11dc2d3
ported old-style classes to new-style
2019-05-26 08:28:18 +02:00
Jean-Paul Calderone
5a1183500e
rewrite RunNode.test_client to use "tahoe run"
2019-05-02 14:21:35 -04:00
meejah
e63ee9b37e
Merge pull request #604 from ArdaXi/master
...
Make isdir argument to _ErrorTarget optional
2019-04-28 04:30:58 +00:00
meejah
fee6eb38a9
Merge pull request #603 from tahoe-lafs/3028-string-literals
...
updated string literal syntax for python3 compatibility
2019-04-26 17:39:38 +00:00
heartsucker
05e0d19cca
updated string literal syntax for python3 compatibility
2019-04-25 11:18:33 +02:00
Arda Xi
2d6cc26127
Make isdir argument to _ErrorTarget optional
2019-04-21 19:33:41 +02:00
heartsucker
a087a5be72
removed tuple unpacking in function definitons for python3 compatibility
2019-04-18 13:37:18 +02:00
heartsucker
0750dbac38
updated all python files to use pep-3110 exception syntax for python3 compatibility
2019-04-04 11:57:58 +02:00
heartsucker
d8187a0f6a
Merge pull request #589 from tahoe-lafs/3015-octal-numeric-literals
...
updated instances of octal literals to use the format 0o123 for python3 compatibility
2019-03-31 11:24:39 +02:00
Jean-Paul Calderone
3c68f5897a
Merge pull request #555 from tahoe-lafs/2976.help-output-groups
...
Remove the attempt at grouping the subcommands.
Fixes: ticket:2976
2019-03-29 13:02:38 -04:00
heartsucker
129ef22185
updated instances of octal literals to use the format 0o123 for python3 compatibility
2019-03-29 11:08:44 +01:00
heartsucker
dbfcf8ae00
replaced StringIO imports with six.moves
2019-03-28 12:31:37 +01:00
meejah
664bd2dec8
Merge pull request #582 from tahoe-lafs/3010-remaining-print-functions
...
replaced all remaining instances of the print statement with the print function
2019-03-28 02:54:49 +00:00
heartsucker
64f4dfa8ca
replaced all remaining instances of the print statement with the print function
2019-03-24 14:14:00 +01:00
heartsucker
fc417826f1
replaced print statement with print fuction for all tahoe_* scripts
2019-03-24 14:10:02 +01:00
Jean-Paul Calderone
c6a2aa9fc7
There may not be any destinations.
2019-03-04 10:08:46 -05:00
Jean-Paul Calderone
7885ba6d72
write the logs
2019-03-04 09:44:00 -05:00
Jean-Paul Calderone
8e0e136c98
Remove the attempt at grouping the subcommands.
...
The change to Twisted has made it very difficult to control the order of
subcommands in the output.
2019-02-25 13:59:35 -05:00
Jean-Paul Calderone
7fb695f956
Add user-facing help about destinations
2019-02-25 13:34:02 -05:00
Jean-Paul Calderone
67ca5c4b4c
Give the top-level command --eliot-destination
2019-02-25 13:12:03 -05:00
meejah
3974af6660
redundant imports
2018-09-10 21:58:27 -06:00
meejah
5d6a76ffee
proper daemonize error-handling
2018-09-10 21:58:27 -06:00
meejah
48f0df627e
cleanup
2018-09-10 21:58:27 -06:00
meejah
329ef1256a
refactor create_client to be async (works to run, some unit-test fails still)
2018-09-10 21:58:27 -06:00
meejah
bd63a4354b
fixup for errors
2018-08-17 15:53:59 -06:00
meejah
8e0e96da01
improve user experience on config errors
2018-08-17 15:53:59 -06:00
Jean-Paul Calderone
20084506b3
Handle all the status cases
2018-05-23 13:59:42 -04:00
Jean-Paul Calderone
9f8c90393f
Remove dead synopsis
definition
2018-04-26 15:10:02 -04:00
Chris Wood
c850638537
Fix PyInstaller builds
...
This commit contains a few small changes to fix PyInstaller frozen
builds (which were recently broken in a few ways by changes introduced
with `tahoe invite`, `tahoe daemonize`, and the addition of "setuptools
>= 28.8.0" to setup_requires) and removes a couple of hacks that are no
longer necessary to create working frozen tahoe executables with
PyInstaller.
2018-03-29 14:11:15 -04:00
Jean-Paul Calderone
fa567958c3
2 blank between top-level; 1 blank between methods
...
Just like PEP8 says
2018-03-26 20:15:45 -04:00
Jean-Paul Calderone
bafe043b73
Explicit new-style class
2018-03-26 20:12:47 -04:00
Jean-Paul Calderone
b78c6cc5ed
Implement the progress reporting
2018-03-26 11:34:31 -04:00
Jean-Paul Calderone
6690aa7337
restore, with tests, checked counters
2018-03-26 10:27:19 -04:00
Jean-Paul Calderone
c55d2823ae
first pass refactoring
...
now collect backup work up-front instead of mixed with processing
2018-03-26 10:02:42 -04:00
Jean-Paul Calderone
371965f7d4
Specify the new optFlag correctly
2018-03-19 15:12:59 -04:00
Ruben Pollan
136de7d7f7
Add storage_dir config field
...
On the [storage] section of the tahoe.cfg now there is a field
'storage_dir' where the path to the storage folder can be configured.
2018-03-19 11:20:04 -04:00
meejah
3466088717
add --json option for 'tahoe list-aliases'
...
some new tests to cover previously-uncovered code that changed
2018-01-05 18:07:52 -07:00
Brian Warner
5e62118e14
hush somewhat-real problems found by static analysis
...
These would have caused problems if a certain unlikely code path was taken:
mostly error-handling pathways.
2017-12-31 00:23:43 +01:00
Brian Warner
da4e7dcfbe
hush a bunch of not-really-problems caught by the lgtm.com static analyzer
...
This is all minor stuff: unreachable debug code (that should be commented-out
instead of in an 'if False:' block), unnecessary 'pass' and 'global'
statements, redundantly-initialized variables. No behavior changes. Nothing
here was actually broken, it just looked suspicious to the static analysis at
https://lgtm.com/projects/g/tahoe-lafs/tahoe-lafs/alerts/?mode=list .
2017-12-31 00:19:41 +01:00
meejah
672475cb2b
Multiple magic-folders
...
This moves all magic-folder configs to a single YAML
file. We load legacy config fine and don't mess with
legacy config unless you use a magic-folder command that
changes the config.
Increase test coverage
2017-12-05 10:34:48 -07:00
meejah
1b6f477549
Pull "config" handling out of Node and hide node-derivitives
...
This includes:
- refactor to create_client and _Client
- refactor to _IntroducerNode and create_introducer
2017-11-20 12:57:20 -07:00
meejah
50f8397c99
Merge branch 'invalid-pidfile' into delete-invalid-pidfile--lpirl
...
Conflicts:
src/allmydata/scripts/startstop_node.py
src/allmydata/test/cli/test_cli.py
2017-11-08 14:49:29 -07:00
Brian Warner
d1fd43aa4f
tor/i2p: rename create_onion/create_dest to create_config
2017-11-03 00:24:46 -07:00
meejah
fd90346c88
Wait up to 60s for node start; improve messaging; look for errors
2017-09-20 00:55:19 -06:00
meejah
9375056b61
Split up startstop_node and add 'tahoe daemonize'
...
This sets the stage for further changes to the startup
process so that "async things" are done before we create
the Client instance while still reporting early failures
to the shell where "tahoe start" is running
Also adds a bunch of test-coverage for the things that got
moved around, even though they didn't have coverage before
2017-09-19 10:39:19 -06:00
Lukas Pirl
1bf032959f
delete invalid PID file on `tahoe (re)start
`
2017-08-24 15:22:25 +02:00
Lukas Pirl
dd9b951c4b
fix crash when stopping/restarting with an invalid pidfile
...
in node directory
2017-08-23 20:23:15 +02:00
meejah
798bf57e28
Add 'tahoe invite' and 'tahoe create-node --join' commands
...
This opens a wormhole and sends appropriate JSON down
it to a tahoe-gui using a wormhole server running on
tahoe-lafs.org
The other end uses the 'tahoe create-node' command (with
new --join option) to read the configuration JSON from
a 'tahoe invite' command
2017-08-08 18:27:06 -06:00
Daira Hopwood
d3acf82776
Rename FilesystemOptions to FileStoreOptions. refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
Daira Hopwood
2055a66cf2
Doc changes that require more careful review. refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
Daira Hopwood
4723af6e2f
LAFS now stands for "Least-Authority File Store" rather than "Least-Authority File System". refs #2345
...
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2017-06-06 11:20:49 +01:00
Brian Warner
f24681bfdc
simplify rendering of path to tahoe.cfg
2017-04-10 11:56:33 -07:00
tpltnt
63bcc07e27
explicit path to tahoe.cfg in creation message
2017-04-07 16:59:17 +02:00
meejah
4f1dd95963
Add a 'tahoe status' command
...
This required also fixing the JSON output from
the "recent and active operations" page.
2017-04-04 12:48:41 -06:00
meejah
031a88c25f
simplejson -> json
2017-02-23 15:21:36 -07:00
meejah
a9521b89a6
--readonly-uri for 'tahoe list-aliases'
2017-01-19 15:40:09 -07:00
Brian Warner
ee58637813
fix syntax (tcp=disabled, not =none), add test
2017-01-10 16:30:04 -08:00
David Stainton
3c22a3ce50
Set tcp = tor only if txtorcon is imported
...
for i2p this means tcp = none as long as txtorcon is not imported
2017-01-10 16:30:04 -08:00
Brian Warner
5651994501
magic_folder_cli: remove unnecessary conditional
...
(this increases our branch coverage by one)
2016-12-14 21:20:45 -08:00
meejah
e32b664b2b
Adjust default poll_interval
...
Also adds a --poll-interval option to both 'magic-folder join'
and 'magic-folder create' so that the integration tests can pass
something "very short".
2016-12-14 20:29:41 -07:00
meejah
37c7d54bd3
keeps defaults in CreateClientOptions but makes shares-* required?
2016-12-13 19:50:19 -07:00
meejah
5b8be255d7
Set total/needed/happy from command-line
2016-12-13 18:52:45 -07:00
Brian Warner
6879622894
create-node: avoid introducer.furl=None
...
Previously, "tahoe create-node" without an --introducer= argument would
result in the literal string "None" being written into tahoe.cfg:
[client]
introducer.furl = None
We were using config.get("introducer",""), but that didn't suffice because
the key was actually present: it just had a value of None, which then got
stringified into "None" when writing out tahoe.cfg.
This briefly caused test/cli/test_create to fail, as the startup code tried
to parse "None" as a FURL. This only happened against a development version
of Foolscap which accidentally became sensitive to unparseable FURLs in
started Reconnectors. I fixed that in the final foolscap-0.12.5 release, so
we shouldn't hit this bug, but I wanted to fix it properly in the tahoe-side
source.
2016-12-08 15:37:49 -08:00
Brian Warner
5a5da0de2a
magic_folder_cli.py: fix typo
2016-12-06 11:01:51 -08:00
meejah
783449b4f3
When tor or i2p options are present, confirm we have txi2p or txtorcon
...
We mock out some import methods and provide tests for providing
server-side or client-side tor/i2p options
2016-10-26 13:41:10 -06:00
str4d
6071c2b6f8
Implement i2p_provider and --listen=i2p
...
Closes ticket:2838
2016-10-23 20:30:01 -05:00
Brian Warner
6b9218ff22
create_node.py: use tor_provider to handle --listen=tor
...
This adds tor-related CLI arguments to "create-node" and
"create-introducer", to control exactly how we should be using Tor.
* --tor-launch
* --tor-executable=
* --tor-control-port=
I went with "--tor-launch" instead of "--launch-tor" for consistency. I
don't particularly like the grammatical flow of it, and it doesn't
actually put all the tor-related arguments next to each other in the
--help output (the flags are put in one block, then the parameters in
the next). But it seems slightly more consistent to start all the
tor-related argument names with a "--tor*" prefix.
2016-10-09 01:21:51 -04:00
David Stainton
e02d21aed1
Add tor listening options to create-node
2016-10-09 00:34:57 -04:00
Brian Warner
1e418ade83
create_node: slight refactoring
...
This prepares for various listeners to contribute values to tub.port and
tub.location, which will be helpful once Tor support is added.
2016-10-09 00:24:19 -04:00
Brian Warner
b5aaafbe68
create_node: add cosmetic newline in tahoe.cfg
2016-10-09 00:24:19 -04:00
Brian Warner
0eda544a73
create-node: introducer needs private/ too
...
All server-like nodes (storage servers and introducers both) will need
this for the tor state directory and .onion private key file, and it
needs to exist before the config is written, so tor onion-service
private keys can be placed there.
Also remove a redundant import.
2016-10-09 00:24:19 -04:00