Do not use hash to store query to leave it for issue bookmarks
The # in the window.location is used for anchors with hrefs that start with
#.
Instead use the well known convention of using the q search param.
Loading...
term"two terms"/directory#hashtag@mentionor-tokenThe # in the window.location is used for anchors with hrefs that start with
#.
Instead use the well known convention of using the q search param.
The main reason is to be able to offer a standalone.
@rage is wrestling with the oCaml docs.
Instead of generating and pushing the issues html on the developer machine we instead just commit and push the edited issues and have the github workflow take it from there.
See creating-a-custom-github-actions-workflow-to-publish-your-site
Showing 1/212 could be the format and it should be placed directly above the
issues.
#feature #bug #improvement #performance #testing #github #design
@rage mentioned that the release workflow does indeed not use upx.
upx --best bin/main.exe
priority:medium
Some can define a template in ./issue/template.md which is used when creating
a new and empty issue.
You can add a - to a token. At the moment it will not show suggestions when doing so.
As a user I would like to know if my search term is matching any terms in the issues so that I get fast feedback if my search is correct.
An added feature is that I can click the suggestion to complete my search term in the input.
Super handy feature and configurable in the template.
Not sure what features github offers for creating a new file.
suggested-by: @rage
priority:low
Mentions, hashtags, directories should only match if the character before the special character is a beginning of line or whitespace.
Assigned to @bas080
Just a nice feature to restart your search.
On tag we want to do a new release with binaries.
author:@rage priority:high
Show the @ # / symbols where suggestions are shown. A click on one of these
symbols will start showing the suggestions for that special term.
If you would for example exclude all /closed items you could write -/closed
Candidates
- and !
I have implemented the not for negation and decided to instead opt for the -.
Currently this behavior is implemented but not document in the usages.
Should only show when user is past a certain scroll y value.
@rage agrees fully with this feature.
It #must create a new release by pushing a new git tag.
It #could also populate the release body with release notes that are generated using some git changelog tool. An option for such a tool could be npm:auto-changelog.
@rage has done this before and shared his previous work and experience.
author:@bas080 priority:medium
Currently the perl script is used in the .github/workflows/pages.yml
workflow. We want to use the new and shiny oCaml implementation in the
workflow.
We need a way to download a specific version of the oCaml build and use it to generate the issue html.
author:@bas080
In the issue you can define key value things to later query on them.
We'll use the ? at the start of a key value. This is inspired by url query params.
?author=@bas080
Here we can see that it is allowed to use other special tokens as the value.
The underlying markup created is.
<span class="straw-keyvalue">
<a ?author=</a><a>@bas080</a>
</span>
The user can either interact with the key value token by clicking the first anchor; or by clicking on the mention token.
Note
These changes require both #browser and #cli changes. For the cli changes we could ?assign=@rage.
Candidates
examples
The /<directory> should only work on directories and should not find issue
filenames.
This forces us to use a markdown library that supports some form of parsing and AST.
@mention
#hashtag
/directory
All listeners are called twice for each state push. This is not ideal as multiple pushes can occur on one event. Let's say you have 5 listeners and 2 pushes. The amount of calls end up being:
listeners = [1,2,3,4,5]
calls = [
firstPushState,
...listeners,
...listeners,
secondsPushState,
...listeners,
...listeners,
]
This double walking over the listeners has to happen because state of one listener can be the dependency of another listener.
A more ideal situation would be to compose all the push call within that tick and then walk the listeners twice.
calls = [
firstPushState,
secondsPushState,
...listeners,
...listeners
]
We can cut down the amount of calls by quite a bit. Especially when the amount of pushes is on the high side.
Conceptually this should be backwards compatible as these amount of passes should allow for the state to stabilize.
assigned:@bas080
No reason to have each character input create a new history entry.
@bas080 is trying to get this working.
This requires the defining of a source path. The source path in the case of github would be.
https://github.com/bas080/straw/blob/master/straw/
It will then append the path of the issue file to that source path.
When generating the straw html; one has to define the SOURCE_URL environment variable.
Work can be started on the html template. ?assigned=@bas080 to get this going.
An anchor with the word source. <a href="${SOURCE_URL}/${PATH}">source</a>
Regarding the cli html. We want to place that anchor after the bookmark anchor only if the SOURCE_URL env var is defined. See https://github.com/bas080/straw/blob/e441475cbd968d8352d95a703c2e297a0a5a33c0/lib/straw/cli.ml#L79
For now just supporting github is fine because we are using github.
Besides, this is configured in the template. The template at some point will be configurable by the user.
--template to issue htmlissue html --template=./issue/template.html
In this example we stored a template in the issue directory to be used to generate a richer and interactive issues webpage.
The template contains a comment <!--issues--> that is replaced with the
output of issue html.
With github issue tracker you can use the #
The hashtag is used for labels. Either rethink this or use something else to reference issues.
Both @rage and @bas080 agree that ! is a good candidate.
For this to work we also need a way to assign the id to an issue file. Possible implementations:
cli
and is less transparent. Suggested by @rage.
/open/abc12/my-issue.md. This also allows bundling possible dependencies
like images within the issue.
priority:high
A single command for working with issues to create branches and commits based on issues.
Create a new branch and an empty commit with the issue as the commit message.
git issue ./issue/open/some-issue.md
# git checkout "issue/some-issue"
# git commit --template <(uses a commit message friendly version of the issue)
@bas080 is trying a quick and dirty bash version on his local machine.
author:@bas080 priority:low
When searching for /open it should not match on arbitrary /open strings. It
should only match on the file path.
Other search operations might also need reconsideration but this issue is only concerned about the path search.