Compare commits

..

4 Commits

Author SHA1 Message Date
Tom Alexander
faf279292a Update build pipeline.
Some checks failed
format Build format has started
clippy Build clippy has failed
rust-test Build rust-test has succeeded
build Build build has failed
2026-07-17 20:04:30 -04:00
fluxcdbot
05c7ecde82 CI: autofix rust code.
Some checks failed
format Build format has succeeded
clippy Build clippy has failed
rust-test Build rust-test has failed
build Build build has succeeded
2026-07-11 22:20:00 +00:00
Tom Alexander
5b2c8173e3 Switch to a home-rolled commit step because git-cli is not using the ssh credentials attached to the service account.
Some checks failed
format Build format has succeeded
clippy Build clippy has failed
rust-test Build rust-test has succeeded
build Build build has succeeded
2026-07-11 18:17:37 -04:00
Tom Alexander
a692628690 Fix tekton pipelines.
Some checks failed
format Build format has failed
clippy Build clippy has failed
rust-test Build rust-test has succeeded
build Build build has succeeded
2026-07-11 17:39:38 -04:00
48 changed files with 231 additions and 174 deletions

View File

@@ -1,3 +1,5 @@
**/.git
target/
org_test_documents/
docker/
/.webhook_bridge

View File

@@ -2,6 +2,8 @@ apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
name: build
labels:
pdb: protect
spec:
timeouts:
pipeline: "2h0m0s"
@@ -50,18 +52,6 @@ spec:
- name: TARGET_URL
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
- name: fetch-repository
taskRef:
resolver: git
params:
- name: url
value: https://code.fizz.buzz/mirror/catalog.git # mirror of https://github.com/tektoncd/catalog.git
- name: revision
value: df36b3853a5657fd883015cdbf07ad6466918acf
- name: pathInRepo
value: task/git-clone/0.9/git-clone.yaml
workspaces:
- name: output
workspace: git-source
params:
- name: url
value: $(params.REPO_URL)
@@ -69,6 +59,18 @@ spec:
value: $(params.PULL_BASE_SHA)
- name: deleteExisting
value: "true"
taskRef:
params:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: "dda7b690195b43e8b9859d1caf5dcbf48588ade1"
- name: pathInRepo
value: task/git-clone/0.1/git-clone.yaml
resolver: git
workspaces:
- name: output
workspace: git-source
- name: get-git-commit-time
taskSpec:
metadata: {}
@@ -101,7 +103,7 @@ spec:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: 7ee31a185243ee6da13dcd26a592c585b64c80e5
value: dda7b690195b43e8b9859d1caf5dcbf48588ade1
- name: pathInRepo
value: task/buildkit-rootless-daemonless/0.1/buildkit-rootless-daemonless.yaml
params:
@@ -122,6 +124,8 @@ spec:
- "type=registry,ref=$(params.image-name):buildcache,mode=max,compression=zstd,compression-level=22,rewrite-timestamp=true,image-manifest=true,oci-mediatypes=true"
- --opt
- build-arg:SOURCE_DATE_EPOCH=$(tasks.get-git-commit-time.results.unix-time)
- --opt
- "build-arg:NIX_SUBSTITUTERS=http://ncps.nix-pull-through-cache.svc.cluster.local:80 https://cache.nixos.org"
- name: BUILDKITD_TOML
value: |
debug = true

View File

@@ -2,6 +2,8 @@ apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
name: rust-format
labels:
pdb: protect
spec:
timeouts:
pipeline: "2h0m0s"
@@ -50,18 +52,6 @@ spec:
- name: TARGET_URL
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
- name: fetch-repository
taskRef:
resolver: git
params:
- name: url
value: https://code.fizz.buzz/mirror/catalog.git # mirror of https://github.com/tektoncd/catalog.git
- name: revision
value: df36b3853a5657fd883015cdbf07ad6466918acf
- name: pathInRepo
value: task/git-clone/0.9/git-clone.yaml
workspaces:
- name: output
workspace: git-source
params:
- name: url
value: $(params.REPO_URL)
@@ -69,6 +59,18 @@ spec:
value: $(params.PULL_BASE_SHA)
- name: deleteExisting
value: "true"
taskRef:
params:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: "dda7b690195b43e8b9859d1caf5dcbf48588ade1"
- name: pathInRepo
value: task/git-clone/0.1/git-clone.yaml
resolver: git
workspaces:
- name: output
workspace: git-source
- name: get-git-commit-time
taskSpec:
metadata: {}
@@ -101,7 +103,7 @@ spec:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: 7ee31a185243ee6da13dcd26a592c585b64c80e5
value: dda7b690195b43e8b9859d1caf5dcbf48588ade1
- name: pathInRepo
value: task/buildkit-rootless-daemonless/0.1/buildkit-rootless-daemonless.yaml
params:
@@ -167,6 +169,8 @@ spec:
env:
- name: CARGO_TARGET_DIR
value: /target
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source
@@ -212,23 +216,23 @@ spec:
- name: docker-image
value: "$(tasks.build-image.results.IMAGE_URL[1])"
- name: commit-changes
taskRef:
resolver: git
params:
- name: url
value: https://code.fizz.buzz/mirror/catalog.git # mirror of https://github.com/tektoncd/catalog.git
- name: revision
value: df36b3853a5657fd883015cdbf07ad6466918acf
- name: pathInRepo
value: task/git-cli/0.4/git-cli.yaml
params:
- name: GIT_USER_NAME
value: fluxcdbot
- name: GIT_USER_EMAIL
value: "fluxcdbot@users.noreply.github.com"
- name: GIT_SCRIPT
value: |
pwd
taskSpec:
metadata: {}
stepTemplate:
image: alpine:3.20
computeResources:
requests:
cpu: 10m
memory: 600Mi
workingDir: "$(workspaces.source.path)"
steps:
- image: alpine/git:v2.34.2
name: commit-changes-step
script: |
#!/usr/bin/env sh
set -euo pipefail
git config --global user.email "fluxcdbot@users.noreply.github.com"
git config --global user.name "fluxcdbot"
git config --global --add safe.directory /workspace/source
git_status=$(git status --porcelain)
if [ -n "$git_status" ]; then
@@ -237,6 +241,9 @@ spec:
else
echo "No changes to commit."
fi
env:
- name: "GIT_SSH_COMMAND"
value: "ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null"
workspaces:
- name: source
workspace: git-source
@@ -329,6 +336,9 @@ spec:
workingDir: "$(workspaces.source.path)"
command: [cargo, cache, --autoclean]
args: []
env:
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source

View File

@@ -2,6 +2,8 @@ apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
name: rust-clippy
labels:
pdb: protect
spec:
taskRunTemplate:
serviceAccountName: build-bot
@@ -50,18 +52,6 @@ spec:
- name: TARGET_URL
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
- name: fetch-repository
taskRef:
resolver: git
params:
- name: url
value: https://code.fizz.buzz/mirror/catalog.git # mirror of https://github.com/tektoncd/catalog.git
- name: revision
value: df36b3853a5657fd883015cdbf07ad6466918acf
- name: pathInRepo
value: task/git-clone/0.9/git-clone.yaml
workspaces:
- name: output
workspace: git-source
params:
- name: url
value: $(params.REPO_URL)
@@ -69,6 +59,18 @@ spec:
value: $(params.PULL_BASE_SHA)
- name: deleteExisting
value: "true"
taskRef:
params:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: "dda7b690195b43e8b9859d1caf5dcbf48588ade1"
- name: pathInRepo
value: task/git-clone/0.1/git-clone.yaml
resolver: git
workspaces:
- name: output
workspace: git-source
- name: get-git-commit-time
taskSpec:
metadata: {}
@@ -101,7 +103,7 @@ spec:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: 7ee31a185243ee6da13dcd26a592c585b64c80e5
value: dda7b690195b43e8b9859d1caf5dcbf48588ade1
- name: pathInRepo
value: task/buildkit-rootless-daemonless/0.1/buildkit-rootless-daemonless.yaml
params:
@@ -177,6 +179,8 @@ spec:
env:
- name: CARGO_TARGET_DIR
value: /target
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source
@@ -273,6 +277,9 @@ spec:
workingDir: "$(workspaces.source.path)"
command: [cargo, cache, --autoclean]
args: []
env:
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source

View File

@@ -2,6 +2,8 @@ apiVersion: tekton.dev/v1
kind: PipelineRun
metadata:
name: rust-test
labels:
pdb: protect
spec:
timeouts:
pipeline: "2h0m0s"
@@ -50,18 +52,6 @@ spec:
- name: TARGET_URL
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
- name: fetch-repository
taskRef:
resolver: git
params:
- name: url
value: https://code.fizz.buzz/mirror/catalog.git # mirror of https://github.com/tektoncd/catalog.git
- name: revision
value: df36b3853a5657fd883015cdbf07ad6466918acf
- name: pathInRepo
value: task/git-clone/0.9/git-clone.yaml
workspaces:
- name: output
workspace: git-source
params:
- name: url
value: $(params.REPO_URL)
@@ -69,6 +59,18 @@ spec:
value: $(params.PULL_BASE_SHA)
- name: deleteExisting
value: "true"
taskRef:
params:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: "dda7b690195b43e8b9859d1caf5dcbf48588ade1"
- name: pathInRepo
value: task/git-clone/0.1/git-clone.yaml
resolver: git
workspaces:
- name: output
workspace: git-source
- name: get-git-commit-time
taskSpec:
metadata: {}
@@ -101,7 +103,7 @@ spec:
- name: url
value: https://code.fizz.buzz/talexander/personal_tekton_catalog.git
- name: revision
value: 7ee31a185243ee6da13dcd26a592c585b64c80e5
value: dda7b690195b43e8b9859d1caf5dcbf48588ade1
- name: pathInRepo
value: task/buildkit-rootless-daemonless/0.1/buildkit-rootless-daemonless.yaml
params:
@@ -162,11 +164,13 @@ spec:
- name: run
image: $(params.docker-image)
workingDir: "$(workspaces.source.path)"
command: [cargo, test, --no-fail-fast]
args: []
command: [cargo, test]
args: [--no-fail-fast]
env:
- name: CARGO_TARGET_DIR
value: /target
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source
@@ -263,6 +267,9 @@ spec:
workingDir: "$(workspaces.source.path)"
command: [cargo, cache, --autoclean]
args: []
env:
- name: RUSTUP_PERMIT_COPY_RENAME
value: "true"
workspaces:
- name: source
workspace: git-source

View File

@@ -1,16 +1,46 @@
# syntax=docker/dockerfile:1
ARG ALPINE_VERSION="3.20"
#
# Builder
#
ARG NIX_SUBSTITUTERS=https://cache.nixos.org
FROM rustlang/rust:nightly-alpine$ALPINE_VERSION AS builder
FROM nixos/nix:2.31.3 AS builder
RUN apk add --no-cache musl-dev
ARG NIX_SUBSTITUTERS
RUN tee -a /etc/nix/nix.conf <<EOF
extra-experimental-features = nix-command flakes
filter-syscalls = false
substituters = $NIX_SUBSTITUTERS
EOF
RUN mkdir /root/natter
WORKDIR /root/natter
COPY --link . .
# TODO: Add static build, which currently errors due to proc_macro. RUSTFLAGS="-C target-feature=+crt-static"
RUN --mount=type=tmpfs,target=/tmp --mount=type=cache,target=/usr/local/cargo/registry,sharing=locked CARGO_TARGET_DIR=/target cargo build --profile release-lto
RUN cp "$(nix build nixpkgs#cacert --print-out-paths)/etc/ssl/certs/ca-bundle.crt" /tmp/ca-bundle.crt
FROM alpine:$ALPINE_VERSION AS runner
COPY . /tmp/build
WORKDIR /tmp/build
COPY --link --from=builder /target/release-lto/natter /usr/bin/
RUN --mount=type=ssh GIT_SSH_COMMAND="ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null" nix build '.#docker_env'
# Export the built closure to a folder
RUN mkdir /tmp/nix-store-closure
RUN cp -R $(nix-store -qR result/) /tmp/nix-store-closure
#
# Runner
#
FROM scratch
WORKDIR /app
ENV PATH="$PATH:/app/bin"
ENV SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt
ENV NIX_SSL_CERT_FILE=/etc/ssl/certs/ca-bundle.crt
COPY --from=builder /tmp/ca-bundle.crt /etc/ssl/certs/ca-bundle.crt
COPY --from=builder /tmp/nix-store-closure /nix/store
COPY --from=builder /tmp/build/result /app
CMD ["/app/bin/natter"]

View File

@@ -65,9 +65,6 @@
name = "natter";
paths = with pkgs; [
appliedOverlay.natter.release
bash
uutils-coreutils-noprefix
# toybox # Smaller than uutils-coreutils?
];
};
}

View File

@@ -1,4 +1,4 @@
[toolchain]
channel = "nightly"
channel = "nightly-2026-05-23"
profile = "default"
components = ["clippy", "rustfmt"]

View File

@@ -1,8 +1,8 @@
use std::ffi::OsStr;
use std::path::PathBuf;
use include_dir::include_dir;
use include_dir::Dir;
use include_dir::include_dir;
use tokio::fs::DirEntry;
use tokio::task::JoinHandle;
@@ -15,15 +15,15 @@ use crate::context::RenderBlogStreamInput;
use crate::context::RenderContext;
use crate::context::RenderPage;
use crate::error::CustomError;
use crate::intermediate::get_web_path;
use crate::intermediate::BlogPost;
use crate::intermediate::IPage;
use crate::intermediate::PublishStatus;
use crate::intermediate::get_web_path;
use crate::render::DusterRenderer;
use crate::render::RendererIntegration;
use crate::walk_fs::walk_fs;
use crate::walk_fs::WalkAction;
use crate::walk_fs::WalkFsFilterResult;
use crate::walk_fs::walk_fs;
use super::stylesheet::Stylesheet;

View File

@@ -8,17 +8,17 @@ use crate::cli::parameters::BuildArgs;
use crate::command::build::render::SiteRenderer;
use crate::config::Config;
use crate::error::CustomError;
use crate::intermediate::get_org_files;
use crate::intermediate::BlogPost;
use crate::intermediate::IPage;
use crate::intermediate::IntermediateContext;
use crate::intermediate::PageInput;
use crate::intermediate::Registry;
use crate::walk_fs::walk_fs;
use crate::intermediate::get_org_files;
use crate::walk_fs::WalkAction;
use crate::walk_fs::WalkFsFilterResult;
use include_dir::include_dir;
use crate::walk_fs::walk_fs;
use include_dir::Dir;
use include_dir::include_dir;
use tokio::fs::DirEntry;
static DEFAULT_STYLESHEETS: Dir =

View File

@@ -3,6 +3,8 @@ use serde::Serialize;
use crate::error::CustomError;
use crate::intermediate::IAstNode;
use super::RenderHeading;
use super::RenderSection;
use super::angle_link::RenderAngleLink;
use super::babel_call::RenderBabelCall;
use super::bold::RenderBold;
@@ -55,8 +57,6 @@ use super::timestamp::RenderTimestamp;
use super::underline::RenderUnderline;
use super::verbatim::RenderVerbatim;
use super::verse_block::RenderVerseBlock;
use super::RenderHeading;
use super::RenderSection;
#[derive(Debug, Serialize)]
#[serde(untagged)]

View File

@@ -5,15 +5,15 @@ use serde::Serialize;
use super::render_context::RenderContext;
use crate::context::macros::push_file;
use crate::error::CustomError;
use crate::intermediate::get_web_path;
use crate::intermediate::BlogPost;
use crate::intermediate::BlogPostPage;
use crate::intermediate::get_web_path;
use super::footnote_definition::RenderRealFootnoteDefinition;
use super::macros::render;
use super::GlobalSettings;
use super::PageHeader;
use super::RenderDocumentElement;
use super::footnote_definition::RenderRealFootnoteDefinition;
use super::macros::render;
#[derive(Debug)]
pub(crate) struct RenderBlogPostPageInput<'a> {

View File

@@ -4,12 +4,12 @@ use serde::Serialize;
use super::macros::render;
use super::render_context::RenderContext;
use crate::context::macros::push_file;
use crate::context::RenderDocumentElement;
use crate::context::RenderRealFootnoteDefinition;
use crate::context::macros::push_file;
use crate::error::CustomError;
use crate::intermediate::get_web_path;
use crate::intermediate::BlogPost;
use crate::intermediate::get_web_path;
use super::GlobalSettings;
use super::PageHeader;

View File

@@ -3,9 +3,9 @@ use serde::Serialize;
use crate::error::CustomError;
use crate::intermediate::IBold;
use super::RenderObject;
use super::macros::render;
use super::render_context::RenderContext;
use super::RenderObject;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,9 +4,9 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IDocumentElement;
use super::macros::render;
use super::RenderHeading;
use super::RenderSection;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(untagged)]

View File

@@ -4,9 +4,9 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IHeading;
use super::macros::render;
use super::RenderDocumentElement;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IItalic;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -1,15 +1,15 @@
use std::collections::HashSet;
use super::footnote_definition::RenderRealFootnoteDefinition;
use super::macros::render;
use super::render_context::RenderContext;
use super::GlobalSettings;
use super::PageHeader;
use super::RenderDocumentElement;
use super::footnote_definition::RenderRealFootnoteDefinition;
use super::macros::render;
use super::render_context::RenderContext;
use crate::context::macros::push_file;
use crate::error::CustomError;
use crate::intermediate::get_web_path;
use crate::intermediate::IPage;
use crate::intermediate::get_web_path;
use serde::Serialize;
#[derive(Debug, Serialize)]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IParagraph;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,9 +4,9 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IPlainListItem;
use super::macros::render;
use super::RenderElement;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IPlainListSimpleItem;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
/// Special case for list items with only paragraphs and sublists as their children. In those cases, the paragraph tags are omitted. This is equivalent to a Paragraph but in a different struct to have a different type tag.
#[derive(Debug, Serialize)]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IQuoteBlock;
use super::macros::render;
use super::RenderElement;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -5,8 +5,8 @@ use crate::error::CustomError;
use crate::intermediate::IRegularLink;
use crate::intermediate::LinkTarget;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::ISection;
use super::macros::render;
use super::RenderElement;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IStrikeThrough;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::ITableCell;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -4,8 +4,8 @@ use super::render_context::RenderContext;
use crate::error::CustomError;
use crate::intermediate::IUnderline;
use super::macros::render;
use super::RenderObject;
use super::macros::render;
#[derive(Debug, Serialize)]
#[serde(tag = "type")]

View File

@@ -1,28 +1,3 @@
use super::angle_link::IAngleLink;
use super::bold::IBold;
use super::citation::ICitation;
use super::citation_reference::ICitationReference;
use super::code::ICode;
use super::comment::IComment;
use super::entity::IEntity;
use super::export_snippet::IExportSnippet;
use super::footnote_reference::IFootnoteReference;
use super::inline_babel_call::IInlineBabelCall;
use super::inline_source_block::IInlineSourceBlock;
use super::italic::IItalic;
use super::keyword::IKeyword;
use super::latex_fragment::ILatexFragment;
use super::line_break::ILineBreak;
use super::org_macro::IOrgMacro;
use super::plain_link::IPlainLink;
use super::plain_text::IPlainText;
use super::radio_link::IRadioLink;
use super::radio_target::IRadioTarget;
use super::regular_link::IRegularLink;
use super::statistics_cookie::IStatisticsCookie;
use super::strike_through::IStrikeThrough;
use super::subscript::ISubscript;
use super::superscript::ISuperscript;
use super::IBabelCall;
use super::ICenterBlock;
use super::IClock;
@@ -52,6 +27,31 @@ use super::IUnderline;
use super::IVerbatim;
use super::IVerseBlock;
use super::IntermediateContext;
use super::angle_link::IAngleLink;
use super::bold::IBold;
use super::citation::ICitation;
use super::citation_reference::ICitationReference;
use super::code::ICode;
use super::comment::IComment;
use super::entity::IEntity;
use super::export_snippet::IExportSnippet;
use super::footnote_reference::IFootnoteReference;
use super::inline_babel_call::IInlineBabelCall;
use super::inline_source_block::IInlineSourceBlock;
use super::italic::IItalic;
use super::keyword::IKeyword;
use super::latex_fragment::ILatexFragment;
use super::line_break::ILineBreak;
use super::org_macro::IOrgMacro;
use super::plain_link::IPlainLink;
use super::plain_text::IPlainText;
use super::radio_link::IRadioLink;
use super::radio_target::IRadioTarget;
use super::regular_link::IRegularLink;
use super::statistics_cookie::IStatisticsCookie;
use super::strike_through::IStrikeThrough;
use super::subscript::ISubscript;
use super::superscript::ISuperscript;
use crate::error::CustomError;
use futures::future::{BoxFuture, FutureExt};

View File

@@ -7,12 +7,12 @@ use tokio::fs::DirEntry;
use tokio::task::JoinHandle;
use crate::error::CustomError;
use crate::intermediate::IntermediateContext;
use crate::intermediate::blog_post_page::BlogPostPageInput;
use crate::intermediate::registry::Registry;
use crate::intermediate::IntermediateContext;
use crate::walk_fs::walk_fs;
use crate::walk_fs::WalkAction;
use crate::walk_fs::WalkFsFilterResult;
use crate::walk_fs::walk_fs;
use super::BlogPostPage;

View File

@@ -4,10 +4,10 @@ use crate::error::CustomError;
use super::footnote_definition::IRealFootnoteDefinition;
use super::macros::intermediate;
use super::IDocumentElement;
use super::IHeading;
use super::ISection;
use super::macros::intermediate;
#[derive(Debug)]
pub(crate) struct BlogPostPageInput<'b, 'parse> {

View File

@@ -1,7 +1,7 @@
use organic::types::StandardProperties;
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;

View File

@@ -1,7 +1,7 @@
use super::IPlainListSimpleItem;
use super::comment::IComment;
use super::keyword::IKeyword;
use super::macros::iselector;
use super::IPlainListSimpleItem;
use super::IBabelCall;
use super::ICenterBlock;

View File

@@ -1,7 +1,7 @@
use super::macros::intermediate;
use super::registry::register_footnote_definition;
use super::IAstNode;
use super::IntermediateContext;
use super::macros::intermediate;
use super::registry::register_footnote_definition;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,6 +1,6 @@
use super::macros::intermediate;
use super::IDocumentElement;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,7 +1,7 @@
use organic::types::StandardProperties;
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;

View File

@@ -71,8 +71,8 @@ mod verse_block;
pub(crate) use angle_link::IAngleLink;
pub(crate) use ast_node::IAstNode;
pub(crate) use babel_call::IBabelCall;
pub(crate) use blog_post::get_org_files;
pub(crate) use blog_post::BlogPost;
pub(crate) use blog_post::get_org_files;
pub(crate) use blog_post_page::BlogPostPage;
pub(crate) use blog_post_page::PublishStatus;
pub(crate) use bold::IBold;

View File

@@ -21,6 +21,7 @@ use super::plain_text::IPlainText;
use super::radio_link::IRadioLink;
use super::radio_target::IRadioTarget;
use super::ITarget;
use super::regular_link::IRegularLink;
use super::statistics_cookie::IStatisticsCookie;
use super::strike_through::IStrikeThrough;
@@ -29,7 +30,6 @@ use super::superscript::ISuperscript;
use super::timestamp::ITimestamp;
use super::underline::IUnderline;
use super::verbatim::IVerbatim;
use super::ITarget;
use futures::future::{BoxFuture, FutureExt};
#[derive(Debug, Clone)]

View File

@@ -1,12 +1,12 @@
use super::IDocumentElement;
use super::IHeading;
use super::ISection;
use super::PublishStatus;
use super::blog_post_page::get_date;
use super::blog_post_page::get_publish_status;
use super::blog_post_page::get_title;
use super::footnote_definition::IRealFootnoteDefinition;
use super::macros::intermediate;
use super::IDocumentElement;
use super::IHeading;
use super::ISection;
use super::PublishStatus;
use crate::error::CustomError;
use std::path::PathBuf;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IPlainListItem;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IPlainListSimpleItem;
use super::macros::intermediate;
use super::IElement;
use super::IObject;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IElement;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -3,11 +3,11 @@ use organic::types::Element;
use organic::types::Object;
use std::collections::HashMap;
use super::ast_node::IAstNode;
use super::ast_node::IntoIAstNode;
use super::IObject;
use super::IParagraph;
use super::IntermediateContext;
use super::ast_node::IAstNode;
use super::ast_node::IntoIAstNode;
type IdCounter = u16;

View File

@@ -5,9 +5,9 @@ use organic::types::LinkType;
use organic::types::StandardProperties;
use url::Url;
use super::IntermediateContext;
use super::get_web_path;
use super::macros::intermediate;
use super::IntermediateContext;
use super::IObject;
use crate::context::RenderContext;

View File

@@ -1,5 +1,5 @@
use super::macros::intermediate;
use super::IElement;
use super::macros::intermediate;
use crate::error::CustomError;
use organic::types::StandardProperties;

View File

@@ -1,7 +1,7 @@
use organic::types::StandardProperties;
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;

View File

@@ -1,7 +1,7 @@
use organic::types::StandardProperties;
use super::macros::intermediate;
use super::IObject;
use super::macros::intermediate;
use crate::error::CustomError;