Age | Commit message (Expand) | Author |
2022-07-07 | issue: Comment on list-line->alist cond ladder.•••* tissue/issue.scm (list-line->alist): Comment on cond ladder.
| Arun Isaac |
2022-07-07 | issue: Rename hashtable-append! to hashtable-prepend!.•••Even hashtable-append! was prepending, not appending. We change its
name to suit.
* tissue/issue.scm (hashtable-append!): Rename to hashtable-prepend!.
(file-details): Call hashtable-prepend! instead of hashtable-append!.
| Arun Isaac |
2022-07-06 | website: Add home page.•••* website/index.skb: New file.
* tissue.scm (#:web-files): Add index.html.
| Arun Isaac |
2022-07-06 | bin: Print out filenames when building website.•••* bin/tissue (pull): Print out filenames when building website.
| Arun Isaac |
2022-07-06 | bin: Allow everyone to read built website.•••* bin/tissue (pull): Allow everyone to read built website.
| Arun Isaac |
2022-07-06 | bin: Look for a default config file.•••* bin/tissue (%default-config-file): New variable.
(default-configuration): Read default config file if it exists.
| Arun Isaac |
2022-07-05 | tissue.scm: Export issue files to HTML.•••* tissue.scm (#:web-files): Export issue files to HTML.
| Arun Isaac |
2022-07-05 | tissue: Deprecate tag listings configuration.•••* tissue/tissue.scm (<tissue-configuration>)[web-tags-path]: Delete
field.
* tissue/tissue.scm (tissue-configuration): Remove web-tags-path
argument.
* tissue/web/static.scm (build-website): Remove tags-path
documentation in docstring.
| Arun Isaac |
2022-07-05 | tissue: Delay default value of #:web-files.•••* tissue/tissue.scm (tissue-configuration): Delay default value of
#:web-files.
| Arun Isaac |
2022-07-05 | bin: Refer to %xapian-index, not db-path, in main function.•••This bug was introduced in ec434ea0710e9ece9f5239c7fe2b1f965a53bea1
when copy-pasting code.
* bin/tissue (main): Refer to %xapian-index, not db-path.
| Arun Isaac |
2022-07-05 | issues: Request inline image rendering feature.•••* issues/render-images-in-web-output.gmi: New file.
| Arun Isaac |
2022-07-05 | tissue.scm: Add tissue.scm.•••We finally start dogfooding.
* tissue.scm: New file.
* .gitignore: Add .tissue.
| Arun Isaac |
2022-07-05 | bin: Guard main function against all git errors.•••* bin/tissue (main): Guard against git errors printing the error
message instead of a backtrace.
| Arun Isaac |
2022-07-05 | git: Add condition-git-error utility.•••* tissue/git.scm: Import (rnrs conditions) and (srfi srfi-1).
(condition-git-error): New public function.
* bin/tissue (default-configuration): Use condition-git-error.
| Arun Isaac |
2022-07-05 | bin: Do not error out when current repository is not found.•••* bin/tissue: Import (rnrs conditions).
(default-configuration): Do not error out when current repository is
not found.
| Arun Isaac |
2022-07-05 | web: server: Serve static files too.•••* tissue/web/server.scm: Import (srfi srfi-171) and (ice-9
filesystem).
(%mime-types): New variable.
(handler): Serve static files too.
| Arun Isaac |
2022-07-05 | web: server: Error out on unknown host.•••* tissue/web/server.scm: Import (rnrs conditions) and (rnrs
exceptions).
(handler): Error out on unknown host.
| Arun Isaac |
2022-07-05 | bin: Centralize `tissue pull' and `tissue run-web' configuration.•••* bin/tissue (default-configuration): New function.
(tissue-pull, tissue-run-web): Use default-configuration.
| Arun Isaac |
2022-07-05 | bin: Set css host parameter by parameterizing the current repo.•••* bin/tissue (tissue-run-web): Set css host parameter by
parameterizing the current git repository.
| Arun Isaac |
2022-07-05 | bin: Pass configuration file to `tissue run-web' as an option.•••* bin/tissue (tissue-run-web): Accept configuration file as a
command-line option.
(unrecognized-argument): New function.
| Arun Isaac |
2022-07-05 | web: server: Pass state directory to web server.•••* tissue/web/server.scm: Import (git) and (tissue git).
(handler, start-web-server): Accept path to state directory instead of
to the xapian index.
* bin/tissue (tissue-run-web): Pass state directory to
start-web-server.
| Arun Isaac |
2022-07-05 | bin: Move stale index checks to main function.•••We want `tissue pull' to unconditionally rebuild the index. Hence, we
move stale index checks out of the index function.
* bin/tissue (index): Do not check if index is stale. Always rebuild
index.
(main): Call the index function only when index is stale.
| Arun Isaac |
2022-07-04 | bin: Add `tissue pull' subcommand.•••* bin/tissue (print-usage): List pull subcommand.
(pull, tissue-pull): New functions.
(main): Call tissue-pull.
| Arun Isaac |
2022-07-04 | git: Bind git_reference_set_target from libgit2.•••* tissue/git.scm: Import dereference-pointer and string->pointer
from (system foreign).
(reference-set-target!): New public function.
| Arun Isaac |
2022-07-04 | git: Bind git_reference_symbolic_target from libgit2.•••* tissue/git.scm: Import pointer->string from (system foreign).
(reference-symbolic-target): New public function.
| Arun Isaac |
2022-07-04 | utils: Add call-with-temporary-directory utility.•••* tissue/utils.scm: Import (ice-9 filesystem).
(call-with-temporary-directory): New function.
| Arun Isaac |
2022-07-04 | web: static: When building website, accept port to log to.•••* tissue/web/static.scm (build-website): Accept log-port argument
specifying port to log to.
| Arun Isaac |
2022-07-04 | web: static: Deprecate mkdir-p in favor of guile-filesystem.•••* tissue/web/static.scm: Import (ice-9 filesystem).
(mkdir-p): Delete function.
(build-website): Use make-directories instead of mkdir-p. Remove TODO
note about using guile-filesystem.
| Arun Isaac |
2022-07-04 | bin: Deprecate delete-directory in favor of guile-filesystem.•••* bin/tissue: Import (ice-9 filesystem).
(delete-directory): Delete function.
(index): Use delete-file-recursively instead of delete-directory.
| Arun Isaac |
2022-07-04 | git: Add %current-git-repository parameter.•••* tissue/git.scm (%current-git-repository): New public parameter.
(current-git-repository): Use %current-git-repository.
| Arun Isaac |
2022-07-04 | git: Implement git-top-level in terms of current-git-repository.•••* tissue/git.scm (git-top-level): Implement git-top-level in terms of
current-git-repository.
| Arun Isaac |
2022-07-04 | git: Implement current-git-repository using repository-open-ext.•••repository-open-ext obsoletes git-top-level.
* tissue/git.scm (current-git-repository): Implement using
repository-open-ext instead of git-top-level.
| Arun Isaac |
2022-07-04 | git: Add clone-options utility.•••* tissue/git.scm: Import (bytestructures guile).
(clone-options): New function.
| Arun Isaac |
2022-07-04 | bin: Separate out indexing into new function.•••* bin/tissue (index): New function.
(main): Use index.
| Arun Isaac |
2022-07-04 | bin: Generalize delete-xapian-index to delete-directory.•••* bin/tissue (delete-xapian-index): Generalize to delete-directory.
(main): Use delete-directory instead of delete-xapian-index.
| Arun Isaac |
2022-07-04 | bin: Unmemoize load-config.•••Memoizing load-config is untenable when dealing with multiple
repositories in a single command invocation.
* bin/tissue (load-config): Unmemoize.
(tissue-web, main): Call load-config only once.
| Arun Isaac |
2022-07-03 | git: Fill git-top-level docstring.•••* tissue/git.scm (git-top-level): Fill docstring.
| Arun Isaac |
2022-07-03 | bin: Correctly support REPL listening on TCP socket.•••Prior to this, the REPL would listen on a Unix socket even if a TCP
socket was requested.
* bin/tissue (tissue-run-web): Correctly support REPL listening on TCP
socket.
| Arun Isaac |
2022-07-03 | bin: Print Unix socket path, not port, for REPL listening on it.•••* bin/tissue (tissue-run-web): Print Unix socket path, not port, for
REPL listening on it.
| Arun Isaac |
2022-07-03 | issue: Use string-remove-prefix from (tissue utils).•••* tissue/issue.scm (list-line->alist, file-details): Use
string-remove-prefix from (tissue utils).
(file-details): Delete function.
| Arun Isaac |
2022-07-03 | conditions: Deprecate &issue-file-not-found-error.•••The &issue-file-not-found-error cannot occur anymore now that we are
reading files directly from the git repository and not from the
working tree.
* tissue/conditions.scm: Delete file.
* bin/tissue, tissue/web/server.scm, tissue/web/static.scm: Do not
import (tissue conditions).
* bin/tissue (main): Do not guard against &issue-file-not-found-error
conditions.
| Arun Isaac |
2022-07-03 | tissue: Read files from git repository, not from the working tree.•••This also frees us from checking if the file actually exists in the
working tree.
* bin/tissue (tissue-show): Use call-with-file-in-git instead of
call-with-input-file.
(load-config): Use call-with-file-in-git and eval-string instead of
load.
* tissue/document.scm: Import (tissue git).
(document-text, read-gemtext-document): Use call-with-file-in-git
instead of call-with-input-file.
* tissue/issue.scm (file-details): Read from a port instead of from a
file.
(read-gemtext-issue): Call file-details with a port reading the file
committed into the git repository.
* tissue/web/server.scm: Import (tissue git).
* tissue/web/static.scm (exporter): Use call-with-file-in-git instead
of call-with-input-file.
| Arun Isaac |
2022-07-03 | git: Add call-with-file-in-git utility.•••* tissue/git.scm (call-with-file-in-git): New public function.
| Arun Isaac |
2022-07-03 | git: Find git tracked files from HEAD, not from index.•••The index is the staging area. We really only want to look at files
already committed into the git repository. In addition, a pleasant
side-effect is that this gets rid of many of the additional bindings
from libgit2.
* tissue/git.scm: Import only %null-pointer from (system foreign). Do
not import (bytestructures guile).
(pointer->bytestructure, bytestructure->pointer, pointer->index-time,
pointer->index-entry, repository-index, index-version,
index-entry-count, index-entry, index-entries): Delete functions.
(%oid, %index-time, %index-entry): Delete variables.
(<index-time>, <index-entry>): Delete types.
(head-tree): New function.
(git-tracked-files): Find git tracked files from HEAD, not from index.
| Arun Isaac |
2022-07-01 | web: server: Make CSS a host-specific parameter.•••* bin/tissue (tissue-run-web): Pass CSS as a host-specific parameter.
* tissue/web/server.scm (handler): Remove css argument. Accept CSS as
a host-specific parameter.
(start-web-server): Remove css argument.
| Arun Isaac |
2022-07-01 | bin: Do not build index or parameterize for `tissue run-web'.•••* bin/tissue (main): Do not build index or parameterize for `tissue
run-web'.
| Arun Isaac |
2022-06-30 | web: server: Support virtual hosts.•••* bin/tissue (tissue-run-web): Add hosts configuration option.
* tissue/web/server.scm: Import (tissue utils).
(start-web-server): Add host parameters argument.
(handler): Read database based on Host header.
| Arun Isaac |
2022-06-30 | web: server: Grant read-write permissions to all on Unix socket.•••* tissue/web/server.scm (start-web-server): Grant read-write
permissions to all on Unix socket.
| Arun Isaac |
2022-06-30 | bin: Introduce listen specification for web service.•••The new listen specification unifies unix sockets, IP addresses and
ports, all into one string.
* bin/tissue (address->socket-address): Delete function.
(listen->socket-address): New function.
(tissue-run-web): Use listen->socket-address instead of
address->socket-address. Specify default listen instead of default
address and port.
| Arun Isaac |
2022-06-30 | bin: Read web service parameters from configuration file.•••* bin/tissue (invalid-operand): Delete function.
(tissue-run-web): Read address and port from configuration file.
| Arun Isaac |