summaryrefslogtreecommitdiff
AgeCommit message (Expand)Author
2022-07-04git: 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-04utils: Add call-with-temporary-directory utility.•••* tissue/utils.scm: Import (ice-9 filesystem). (call-with-temporary-directory): New function. Arun Isaac
2022-07-04web: 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-04web: 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-04bin: 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-04git: 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-04git: 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-04git: 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-04git: Add clone-options utility.•••* tissue/git.scm: Import (bytestructures guile). (clone-options): New function. Arun Isaac
2022-07-04bin: Separate out indexing into new function.•••* bin/tissue (index): New function. (main): Use index. Arun Isaac
2022-07-04bin: 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-04bin: 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-03git: Fill git-top-level docstring.•••* tissue/git.scm (git-top-level): Fill docstring. Arun Isaac
2022-07-03bin: 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-03bin: 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-03issue: 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-03conditions: 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-03tissue: 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-03git: Add call-with-file-in-git utility.•••* tissue/git.scm (call-with-file-in-git): New public function. Arun Isaac
2022-07-03git: 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-01web: 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-01bin: 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-30web: 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-30web: 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-30bin: 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-30bin: 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
2022-06-30web: server: Make CSS representationally more concise.•••* tissue/web/server.scm (%css): Make CSS representationally more concise by removing blank lines and squeezing one-rule blocks into a single line. Arun Isaac
2022-06-30web: server: Do not pad search results.•••* tissue/web/server.scm (%css)[.search-results]: Do not pad. Arun Isaac
2022-06-30web: server: Add class to search results ul list.•••* tissue/web/server.scm (make-search-page): Add class "search-results" to search results ul. Arun Isaac
2022-06-30web: server: Display estimated number of matches.•••* tissue/web/server.scm: Import (xapian wrap). Import parse-query from (xapian xapian) renaming it to xapian:parse-query. (make-search-page): Display estimated number of matches. (handler): Pass estimated number of matches to make-search-page. Arun Isaac
2022-06-30search: Separate out query parsing into public function.•••* tissue/search.scm: Import parse-query from (xapian xapian) renaming it to xapian:parse-query. (parse-query): New public function. (search-fold): Use parse-query. Arun Isaac
2022-06-30web: server: Re-indent make-search-page.•••* tissue/web/server.scm (make-search-page): Re-indent. Arun Isaac
2022-06-29Makefile: Remove top_level_module_dir suffix from scmdir and godir.•••* Makefile (scmdir, godir): Remove top_level_module_dir suffix. Arun Isaac
2022-06-29Makefile: Preserve directory structure during installation.•••* Makefile (install): Preserve directory structure when installing sources and objects. Arun Isaac
2022-06-29Makefile: Remove dependencies of phony target `install'.•••* Makefile (install): Remove dependencies. Arun Isaac
2022-06-29web: server: Self-document search filters.•••* tissue/web/server.scm (make-search-page): Self-document search filters. (%css)[.search-hint, .search-filter]: New rules. Arun Isaac
2022-06-29search: Rename last-updater to lastupdater.•••Xapian doesn't seem to like hyphens. * tissue/search.scm (search-fold): Rename last-updater to lastupdater. Arun Isaac
2022-06-29search: Return all results by default.•••* tissue/search.scm (search-fold, search-map): Set default value of #:maximum-items argument to all documents. * bin/tissue (tissue-search): Do not pass #:maximum-items to search-map. Arun Isaac
2022-06-29web: server: List search results even on home page.•••* tissue/web/server.scm (handler): List search results even on home page. Arun Isaac
2022-06-29web: server: Pre-fill search box with current query.•••* tissue/web/server.scm (make-search-page): Accept query argument. (handler): Pass query argument to make-search-page. Arun Isaac
2022-06-29web: server: Add document type identifiers in web output.•••* tissue/web/server.scm (%css)[.search-result-title, .search-result-document, .search-result-issue, .search-result-open-issue, .search-result-closed-issue]: New rules. Arun Isaac
2022-06-29issue: Remove space at the beginning of search result metadata.•••* tissue/issue.scm (document->sxml): Remove space at the beginning of search result metadata. Arun Isaac
2022-06-29document: Add search result title CSS class.•••* tissue/document.scm (document->sxml): Add search result title CSS class. * tissue/issue.scm (document->sxml): Add search result title CSS class. Arun Isaac
2022-06-29document: Add CSS classes identifying document type.•••* tissue/document.scm (document->sxml): Add search-result-document class. * tissue/issue.scm (document->sxml): Add search-result-issue and search-result-open-issue/search-result-closed-issue classes. Arun Isaac
2022-06-29search: AND is:open filter with search query.•••* tissue/search.scm (search-fold): AND is:open filter with search query. Arun Isaac
2022-06-29document: Print identifier identifying type of search result.•••* tissue/document.scm (print): Print DOCUMENT identifier. * tissue/issue.scm (print): Print ISSUE identifier. Arun Isaac
2022-06-29bin: Page search results, and do not limit number of results.•••* bin/tissue (tissue-search): Page results, and do not limit number of results. Arun Isaac
2022-06-29document: Accept port argument when printing to text.•••* tissue/document.scm (print): Accept port argument. * tissue/issue.scm (print): Accept port argument. Arun Isaac
2022-06-29utils: Add call-with-output-pipe.•••* tissue/utils.scm (call-with-output-pipe): New function. Arun Isaac
2022-06-29document: Remove blank line between title and snippet.•••* tissue/document.scm (print): Remove blank line between title and snippet. Arun Isaac