Incoming commits
Outgoing commits
fix typo in docstring
typo in docstring
paramter adaptions: poll, cancel_time, concurent - sleep 1s between polling - cancel to 2h (needed for big repos) - 8 concurrent requests (just a test)
comment tyo
comment tyo
comment typo
inconsistent doc to argument (minor)
started implementing a freenet scheme. Goal: hg push freenet:USK@/repo
started implementing a freenet scheme. Goal: hg push freenet:USK@/repo
merge add missing files and refactor.
fix imports
when generating a key, the name should be NAME.R1.
Implemented push, pull and clone from and to freenet:USK@ and USK@ uris.
refactored genkey to allow for key generation outside of the genkey command.
now pushing and pulling works with keys in the .hg/hgrc (prefixed with freenet://)
FIX: broke fn-genkey
Always creating a new private key for a repo cloned to freenet. If you want to use your default private key instead, call fn-create directly.
merged freenet scheme branch.
fix hg-git interaction error.
fix hg-git interaction error.
Make it possible to use the short form USK@/reponame to upload to a key in the form USK@<key>/reponame.R1/0 - avoids the very easy to make error of forgetting the .R1.
notes on potential name rewriting when the key is given. Left commented out, because it might make it impossible to update old repos when they drop out. Added a TODO to do this cleanly in the backend.
merge realtime flag and config changes.
can now push to USK@/repo to create that repo. Also improved help output.
removed . at the end of an info which ends with a key.
now push to USK@/repo actually creates the repo - and the info advises to use clone for creating repos with existing keys.
first tries at fixing the repo-API-compatibility problem. Nothing functional, yet.
hg 2.3+ compat
Fail gracefully on reinserting if the generated CHK does not match the original CHK (reason could be a changed hg version).
added mime-type bug.
slightly more consistent codestyle.
bab try at fixing mime types.
choosing the fix from djk for mime types, because he is the main coder.
added fix-timezone-attack bug
merge from djk
added a readme
fix bug in readme (ducks… :) )
mark fixed mime-type bug as resolved
added the exported patches for bug 4 (UTC). Not yet finished, but I want to ensure that the patches stay available.
Add --wot option to fn-create. Like --uri, but gets the insert URI from (LC)WoT based on a nickname supplied in place of "USK@."
Refactor own identity resolution into module.
Fix ambiguous local identity message. String was not properly formatted.
Refactor variable names for conciseness.
Rename "own identity" to "local identity". More idiomatic English.
Move status messages out of wot module. Error messages makes sense as the module knows best what the error is, but it does not know the context of usage.
Tell which local identity is found by fn-create.
Save truster identity during fn-create. To be used for later WoT-enabled fn-pulls to the same repo.
Add initial WoT support to fn-pull. * Refactor WoT module to allow functions for parsing responses. * WoT not currently supported, but LCWoT is. * See https://bugs.freenetproject.org/view.php?id=5729
Refactor to reduce indentation.
Add WoT fn-pull support; default WoT truster. * Set up with fn-setupwot or fn-setup without --nowot. Takes --truster. * Add --truster override for fn-pull. Currently fn-pull with --wot uses WoT only to resolve the base key, but it would be desirable to be able to resolve the repo edition and handle its redundancy level via the WoT vcs XML.
Mention what part of a repo bundles constitute.
Fix typo.
Document additional optional dependencies.
Key wot_identities by request URI for consistency. Everything else uses request URI hash.
Whitespace.
Allow local identity lookup by id. Useful for looking up identities by their wot_identities entries.
Allow checking if a repo has an associated WoT ID.
Return inserted URI on create and push.
Generate and insert WoT repo list on change.
Whitespace.
Add progress update when inserting repo listing.
Add contexts to WoT identity parsing.
Fix regression in repo list URI.
Return default truster when no insert URI is set.
Add repository names lookup from WoT repo list. One can now pull a repository with hg fn-pull --wot AnID/reponame
Change repo list get and put to interactive.
Remove debug: return instead of print response.
moved commands out to infocalypse/commands.py to match the scheme changes (easier merging)
forgot to remove hexlify import
merge schemes code from bab into wot-code from operhiem1.
adapt the schemes code to provide the options needed by the wot code.
added bug report for missing default truster entry.
Whitespace.
Remove outdated TODO.
Move name/identity parsing into function. Less duplication and better readability.
Add missing --nowot option to fn-setup.
Add support for resolving local identities by key.
Formatting.
Add TODOs.
Update docstring. These parameters have merged.
Add missing newline.
Remove redundant full-key local identity matching. Partial key matching works for full key matching too.
Merge ArneBab freenet-scheme.
Fix typo.
Fix formatting of derived Freemail addresses. Padding is omitted, the entire thing is lower case, and there is a '.' before 'freemail'.
Merge ArneBab merge of freenet-schema and vcs.
Merge Freemail address fixes.
More semantically meaningful string stripping.
Close freenet-scheme branch. This is not needed anymore - it it merged into default.
Merge freenet-scheme branch closure.
Merge previous head.
Correct mistaken merge.
Merge previous head with fixed merge.
Add missing os import.
More specific no-Freemail warnings. Also adds newlines.
Fix whitespace / line length.
Add per-repo Freemail password configuration.
Add missing --truster to fn-pull.
Look up pull truster - don't require public key hash.
Remove outdated todo.
Fix crash on nonexistent identity to pull from.
Add feedback when identity to pull from is found.
Update identity search to reflect LCWoT changes. It is no longer an error for more than MaxIdentites to match. There is a field containing the number of matched identities. It also became clear that nicknames require a wildcard to match as with startswith(), whereas the ID uses startswith() already.
Document --truster format.
Add terminology documentation; begin to conform.
Add freenet://WoT path resolution.
Fix more terminology.
Add more work on freenet:// path resolution for WoT.
PEP8 whitespace, line lengths, comments, imports.
Simplfy argument parsing expressions. Empty lists are False when converted to a boolean.
Fix KeyError on Config save.
Fix Freemail password setup resetting config; saving.
added a bug for minimizing dependencies of infocalypse.
typo
edit simplify dependencies bug.
usability bug
bug report
Comments.
Add WoT path resolution to clone.
Add parsing for named WoT properties.
Return inserted URI if it has changed.
Add partial pull request support; other things. Exit when unable to resolve WoT URI. (Possibly would be better to use ui.abort()) Add listing of WoT dependencies and pull request syntax to readme.
merge changes from operhiem1 with some comments.
added cloning bug
Use util.Abort instead of ui.warn(); return None. More straightforward - the effect was similar. Note this can still be caught if exiting is not desirable.
Merge arnebab bugs and typo fixes.
Replace split('\n') with splitlines(). Good to know splitlines() exists!
Use USK class instead of manual string operations.
Fetch key following redirects. Fetching a USK may give redirects.
Follow redirect when fetching repo listing.
Support freenet:// prefix to keys; add __repr__.
Add TODO on terminology notes.
Add partial notification check support.
Partial notification check commit. imaplib is being problematic. This is a partial commit before trying IMAPClient.
Initial version of parsing VCS message subjects.
Fix assuming prefix presense; subject always starting at prefix.
Remove leading and trailing whitespace around YAML.
Filter pull request lines starting with 'HG:'.
Add initial notification checking support. Supports multiple matching messages. Comments. Displays recognized requests and gives feedback otherwise.
Abort pull request in case of empty message.
Comments.
Avoid putting YAML in pull request message prompt.
Clarify subject prefix.
Fix aborting pull request on empty message.
Clarify variable name.
Give feedback when pull request sent.
Remove comments.
Fix setting fn-create WoT association before request URI is known.
merge bug addition
Added signature for changeset a0497b6203c2
Fix documentation nonexistent parameter warning.
Whitespace.
Normalize line endings; place end YAML index at end.
Remove 'freenet://' from a USK more explicitly.
Fix lack of quoting to make string in __repr__.
Add initial fn-connect implementation. Only pings, does not handle session conflicts, and does not respond to any commands because none are currently implemented on the plugin side either.
merge operhiem1’s code.
Added signature for changeset 6203fa010d01
Use lower case for "vcs" value. If the value is ever used in something in which case is difficult, such as a filesystem, it'd be good to have it all in lower case.
Exit and print description on error.
Add intial ListLocalRepos support.
Remove unused import.
Fix finding YAML end. The join for consistent line endings means no trailing newline. Also fixes obscuring failure to find the YAML end by adding the token length.
Document case decision.
Allow VCS token anywhere in the Freemail subject. Requiring the token to be a prefix interferes with doing things like forwarding requests to other users.
Fix crash on no VCS messages.
Fix crash on fn-create with --wot. inserted_to returns a list of request URIs, not a single one, so use the first URI.
Fix empty truster in freenet:// URI resolution. Config.from_ui() is a class method that returns an instance, not an instance method that modifies.
Save config file after adding WoT ID association.
Fix incorrect WoT associations with repos. Returning the default truster if no explicit association was set caused this problem. Also break out building repo list for local identity. This makes debugging easier, but demonstrates odd argument flow with only taking a key as an argument.
Close resolved bug.
Fix overcomplication in finding a local truster. Returning a default when an explicit WoT identity was not set required more complex code to use a non-default, as was desired in most circumstances. Also fixes fn-pull incorrectly resolving WoT identity by insert URI. (It is actually keyed by request URI hash / "repo id".)
Add fn-updaterepolist to reinsert repo list. Fixes bug 2.
Mark bug resolved.
Merge.
Mark bugs resolved.
Fix hg clone to a freenet: path silently exiting.
Add abstraction for WoT identities. The WoT_ID class performs lookup from an identifier and exposes attributes. Local_WoT_ID extends WoT_ID and also exposes an insert URI. This avoids problems with being stringly typed and makes intent much clearer. Also adds a clone() to USK to avoid modifying the WoT_ID member variables.
Add newline after displaying pull request body. Otherwise the separator is on the same line, which is not desirable.
Comments.
Break away querying WoT for local ID for readability.
Give local directory matching target for pull requests.
add hg incoming bug report
Remove trailing whitespace from Freemail marker. Whiltespace might not be valid as part of an IMAP search token.
Comments.
Refine pull request directions wording. The second line doesn't _have_ to be blank, it just isn't used.
Mark methods as internal.
Assume edition 0. Also R1 for push to freenet:// Edition is easier to omit, and having Fred search for the latest edition is a reasonable default. When using internal commands (fn-*) the user is assumed to be more confident in Infocalypse internals. When using built-in commands with freenet: URIs, redundancy is less clear, so assuming redundancy seems helpful in use cases like hg clone . freenet:USK@.../repo_path. This also adds a warning when creating a repository on a path that does not specify redundancy. Assume edition: * fn-create --uri and --wot * fn-copy --inserturi and --requesturi * fn-reinsert --uri * fn-pull --uri * fn-push --uri * built-in command source Assume edition and redundancy: * built-in command destination
Use more idiomatic empty string and zero checks. An empty string is False, as is 0. Checking for 0 as a boolean makes sense when it's semantically a set-or-not kind of check, but not if it's semantically a number.
Exit gracefully if no URI specified to fn-create.
Assume edition on push freenet://. Do not assume redundancy because as the repository is being pushed to it already exists.
begun testing notes on infocalypse
Clarify public key hash lookup failure. Mentioning only the identifier does not make it clear that only the public key hash is used in a WoT lookup. It's also good to mention how to support more flexible lookup.
Add optimism to error message.
Fix giving empty nicknames to GetIdentitiesByPartialNickname. Doing so results in an exception in LCWoT's query layer, for which it does not return an error over FCP, (I think?) so Infocalypse's FCP times out.
Fix including nickname in Truster public key hash.
Refine error message wording.
Refine comment wording. "just" adds no information.
Remove redundant parameters. The default value of async is False.
Update dev notes for wot_id abstraction.
Add documentation.
Fix resolving WoT freenet:// pull URIs. The default truster string was being used where a Local_WoT_ID was required. Modify get_truster() to take an explicit truster argument instead of a dictionary, so it's easier to use elsewhere.
Correct get_truster() documentation.
Fix clone truster resolution.
Remove unnecessary variable.
Fix "clone" requiring the target repository exist. When looking up a push URI for a clone operation the edition lookup is now skipped.
Fix str and WoT_ID mixup in sending pull request. More mistakes from transitioning to the WoT_ID abstraction.
Update web UI plugin name. The package name has changed, and it no longer contains "Infocalypse".
Add bug reports. Some of them are features.
Use same VCS constant in notifications; repo XML. This is a breaking change for existing repo XML.
merge operhiem1 into bab
merge more
added some testing notes.
Track the latest known repo list edition. This takes some responsibility off the node for fetching an up-to-date edition, because it is no longer always given edition 0 to start from. This does introduce some clumsiness as if the node follows redirects it does not return the used edition. This should probably be replaced with a WoT property once WoT properties can be inserted without causing an insert, as it will avoid starting the repo list at edition 0.
Fix incorrect method name; missing newline.
Close bug on assuming redundancy and edition. See 4577c1695a31
Add tolerance for remote repository list problems. - Add USK support for "repo name," which excludes any redundancy. - Use highest edition for a key if more than one is specified. - Ignore repos listed with multiple different keys or complete names.
Move fn-connect to separate module. Though it may make use of wot module methods, it shouldn't be performing its own queries to WoT.
Add support for new connection exchange.
Add initial new protocol implementation. Replies to VoidQuery with VoidResult. Also nicely disconnects on SIGINT.
merge
merge
merge bug report
clone freenet://Absolutely/pyProbe should now use pyProbe as local path.
Fix maximum recursion depth exceeded error: factored out recursive parents function into a while and a for loop.
merge old max recursion depth fix.
avoid leaking the timezone on infocalypse repositories cloned from freenet with hg clone.
09:42:30
mark timezone bug as solved
polish readme