profile
viewpoint
If you are wondering where the data of this site comes from, please visit https://api.github.com/users/Treora/events. GitMemory does not store any data, but only uses NGINX to cache data for a period of time. The idea behind GitMemory is simply to give users a better reading experience.

lovasoa/react-contenteditable 1177

React component for a div with editable contents

Treora/redux-query-sync 71

Synchronise URL query parameters and redux state.

redecentralize/redecentralize-website 24

Website of Redecentralize.org

Treora/quoteurl 13

Allow URLs to point to any text piece in a document

Treora/precise-links 10

Browser extension to support Web Annotation Selectors in URIs

Treora/cdtw 8

NumPy-based constrained Dynamic Time Warping (cDTW) module

salus-sage/bookmark-selection 5

Web Annotation based deep link bookmarks

Griffingj/mutable-proxy 2

A library for creating mutable proxies

push eventapache/incubator-annotator-website

Gerben

commit sha 4a0df446808581d1b64f3307d100b9700c7e65b1

Fix link

view details

push time in 13 days

push eventapache/incubator-annotator

Gerben

commit sha 5b19264a83490f56ba700fc94d54e6d151c30750

Reflect branch rename master→main

view details

push time in 13 days

issue commentapache/incubator-annotator

Can't use after installing via npm (without webpack or similar)

Regarding replacing the optimal-select dependency, I described my earlier research in commit message c8ef340e34b1:

I tried a few css selector generators, listed here:
<https://github.com/fczbkk/css-selector-generator-benchmark>

- css-selector-generator failed when a root (= scope) is passed; see
  issue <https://github.com/fczbkk/css-selector-generator/issues/65>.

- using @mdev/finder instead gave syntax errors due to ‘export’ token.
  (perhaps because we don’t transpile dependencies; worth considering?)

- optimal-select seemed to work; whatever works is good enough for now.
DellCliff

comment created time in 14 days

push eventredecentralize/redecentralize-website

Gerben

commit sha 2364ef6159cb7a7c5432f4b0d1e67886cc32a068

Add August’s digest

view details

push time in 15 days

push eventapache/incubator-annotator-website

Gerben

commit sha 658f3cdfc3996d45137782ec52a26546dd114ad5

Update pointers from v0.1 to v0.2

view details

Gerben

commit sha 2e063deab9ecba107abfc8d1b83fbe2d9c01d36e

tweak syntax highlighting

view details

Gerben

commit sha 5ef860c97a0ce7500a53cc7a443933c5a080670b

Rebuild content

view details

push time in 18 days

push eventapache/incubator-annotator

Gerben

commit sha d5e92e36204c15a1353d6c7b76798928914b6cd0

Fix dependency: dom depends on selector

view details

push time in 18 days

push eventapache/incubator-annotator

Gerben

commit sha 7416047724c68b7effdf615d430c1d0943b336af

Bump v0.1.0 → v0.2.0 (better late than never?)

view details

push time in 18 days

GollumEvent

created tagapache/incubator-annotator

tagv0.2.0

Apache Annotator provides annotation enabling code for browsers, servers, and humans.

created time in 19 days

push eventredecentralize/redecentralize-website

Gerben

commit sha 4976e0d64f4edc95ac987615e3f4becfd5259832

Add July’s digest

view details

push time in 2 months

push eventWebMemex/freeze-dry

Gerben

commit sha ae48887b10212127551f409498bfe32f96eab06f

Ditch iterators, start recursive processLinks approach Combining iterators with recursion was never going to work, at least not without ruining the elegance it was supposed to provide. Instead, use a callback-based approach, where the callback is invoked for each link to a subresource and is expected to recurse to handle sub-subresources etc. The approach is similar to (and inspired by) gozala’s approach in PR #44; however, it differs in several ways: - It does not create ‘stub’ resources, because the Link is the item that is passed to the callback function. - Fetching, recursing and updating the link target are explicitly performed by the callback function; which may thus require a few more lines, but less magic is happening. Also the Resource classes need not know anything about these activities, becoming a more passive object. - Capturing the DOM state is still a separate step doing its own recursion, in order to make that happen synchronously. Might change in subsequent edits.

view details

Gerben

commit sha aa1ce7c23a74397ab382bcdc2c0b616d2481e579

Move and rename things

view details

Gerben

commit sha afa760f660f44b7a04edf2c66272f7cf3cbba38d

No need for iterables in captureDom either

view details

Gerben

commit sha c633fb9bdacb660d8cd2a9fd75fb88267de08825

WIP Grab frames during subresource crawl, not before Previously, captureDom would recurse into frames in order to get all their contents synchronously. Crawling subresources would happen after this, which works asynchronously, and the reasoning was that the DOM might change during this asynchronous crawling. Turns out this was overcautious. The recursive crawling for subresources can happen partly sync, partly async. If we ensure that the grabbing of frame contents as well as the recursion into those frames’ frames happen before the first ‘await’ expression, all frames’ contents will be obtained synchronously. Confirmed by MDN[1]: “Top-level code, up to and including the first await expression (if there is one), is run synchronously.” This change makes the code simpler: only one recursive walk happens, and the tactic of first trying to grab it synchronously and falling back to asynchronous fetching if needed is now cleanly kept in a single place. This also allows customising the grabbing of frames in the same callback function. [1]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function

view details

push time in 2 months

push eventapache/incubator-annotator-website

Gerben

commit sha baf0e6b349679fc3ae0bc833c5c926460f4f64b8

Rename .asf.yml to .asf.yaml

view details

push time in 2 months

GollumEvent

issue commentapache/incubator-annotator

Turn AsyncGenerators into Generators

You are completely correct that there is no need for the current functions to be async. The reason they are async is to make it easier to do async stuff in the future, without needing to change the API. For example, fuzzy text search may be computationally expensive, and could be offloaded to a worker thread.

Note that e.g. a TextPositionSelector can never produce multiple results, so besides not needing to be async its matcher would not even have be a generator. However, the idea is to have a coherency in the function signatures, and making all matchers return async generators seemed the most flexible option, allowing for easy composition of matchers; that is, to have a single function able to handle various types of Selectors, dispatching them to the appropriate functions, as we do in the demo.

We are aware that this choice of generality does impose constraints on the users of the functions, who need to await each result, and whose functions thus have to become async themselves; ‘async infection’ as you call it. We have been thinking about a practical way to provide a synchronous API in addition to an asynchronous API. See the discussion in #81; suggestions are welcome!

DellCliff

comment created time in 2 months

created tagWebMemex/freeze-dry

tagv0.2.5

Snapshots a web page to get it as a static, self-contained HTML document.

created time in 2 months

push eventWebMemex/freeze-dry

Gerben

commit sha 41664366d2b0316fcb1ec7ffd60938ae9e493c25

Output type declaration files

view details

Gerben

commit sha 271db2b5c2ecc980332e93682f0b3c1304f1e099

0.2.5

view details

push time in 2 months

push eventWebMemex/freeze-dry

Gerben

commit sha ddf33003583db90f71407c3f2c254f4dd129e1ec

Add babel typescript preset

view details

Gerben

commit sha e9b7b04c2dd0a42c9081094181c1d9c747fadae2

Rename all files from .js to .ts

view details

Gerben

commit sha 55382b3a373f9bf36dcd8de633a048362598df06

Remove '.ts' from import statements

view details

Gerben

commit sha 83ecda45dc087ab27587ae8489c54214a4c59989

Add typescript dependency; add typecheck command

view details

Gerben

commit sha 69559c89442763ef11d8b0271999fbc5ad9ae103

Define link types; type freezeDry and captureDom

view details

Gerben

commit sha 0bfbb80401774992c292fab2755dd5bbd854102b

Type some of extract-links/

view details

Gerben

commit sha f1e3bd8ff233b92aaba9be9884c1a31fa6f980c2

Add Link.resource attribute for now This should not stay this way. Ideally extract-links could be extracted into a separate module, not depending on freeze-dry. We could change the code to either use a generic type for the resource attribute ('any'?); and possibly rename 'resource' to e.g. 'note' (like in parse-tools). Or (probably cleaner) we can change the code to just not add attributes on the link, but keep them separate (e.g. in a Map<Link,Resource>, or by wrapping the link in an intermediate object).

view details

Gerben

commit sha 7473812184c3a259edad7a0fd13ae21b35891d84

create tsconfig.json

view details

Gerben

commit sha 5073a8dfdbcb66e4c8cabfc6791260193e2f8013

type parse tools

view details

Gerben

commit sha c3e1cbeef97fd73394a40798ab13514001b6399f

Fix old string/int indexing mistake

view details

Gerben

commit sha 2f220839b6cc3c49401f0b05de7b7bc15b18dccc

Type extract-links, url-attributes

view details

Gerben

commit sha a2da33e23c391b9a34f0af7839a541c9943b1a68

Fix bug!

view details

Gerben

commit sha ce64916640154edf5c784e94476b7c8c44817e49

Install @types/jest

view details

Gerben

commit sha e81fe7c7103a11f3696a462c941a508e88589af8

Consistently use Element, not HTMLElement Could also be vice versa, not sure (need to look into SVG support some other day)

view details

Gerben

commit sha 0c51d236f57b0c6ed8c5d9289ca407fb672bd407

Configure moduleResulotion="Node" AllowSyntheticImport seems needed for postcss.

view details

Gerben

commit sha c17c113655d4717d9e1f02b538c7726f06165ca8

Update memoize-one dependency It now has type declarations

view details

Gerben

commit sha 0508710ace9c4c26e3d90d684681a921b542d656

Add/change CSS&HTML link types

view details

Gerben

commit sha 26551f84c94ac169f27b0459d624df50184f4bf7

Fix bug in mergeWith. Add regression test.

view details

Gerben

commit sha b43ae1d3bf8c59f31b6063f159d9832b053d4519

Configure noImplicitAny = true

view details

Gerben

commit sha 495e3fe08ca7554bcabeb18f76483b0823cfc213

Solve implicit-any issues in extract-links

view details

push time in 2 months

PR merged WebMemex/freeze-dry

Convert to Typescript

Fixes #28!

Also tweak and fix some tiny issues while at it (e.g. #49 and newly discovered bugs).

Also freezeDry now allows passing a custom global object that will be used to access DOM interfaces — no longer assuming anything to exist globally (mainly as this helped with getting the tests pass when using jsdom, but also it seems a clean thing to do).

+13322 -5386

0 comment

60 changed files

Treora

pr closed time in 2 months

issue closedWebMemex/freeze-dry

Use a type system

Use JS classes, flow, typescript, mere jsdoc @types, ...?

Some objects especially worth creating types for, as we pass them around:

  1. parse functions and their return value: [{ token, index, note? }, ...].
  2. attributeInfo (documented here).
  3. link objects (documented here).
  4. resource objects (documented here), probably with subtypes HtmlResource/CssResource.

closed time in 2 months

Treora

delete branch WebMemex/freeze-dry

delete branch : master

delete time in 2 months

create barnchWebMemex/freeze-dry

branch : main

created branch time in 2 months

delete branch WebMemex/freeze-dry

delete branch : main

delete time in 2 months

create barnchWebMemex/freeze-dry

branch : main

created branch time in 2 months

push eventWebMemex/freeze-dry

Gerben

commit sha 9da0fbadc015e0f3396cac637a3971d57000dfa1

Make adding a CSP tag optional

view details

Gerben

commit sha f70df9e7a7a115df667fd293e4d9994806cfe304

Add simpler tests

view details

Gerben

commit sha f9b37148f4d70fd6ad73226cd9076d9453c28d1b

Refactor captureDom to use iterables Use the same pattern as in crawlSubresources. Will need modifications to allow capturing DOM state (which needs access to the original DOM).

view details

Gerben

commit sha 1b9e8abae8526632b9760251fab96756a2df4869

Make DomResource.clone()

view details

Gerben

commit sha e88d04394d850fad0c81a4af68898187fa09a18a

Do not bother to override URLs of framed documents Remove the override for now to reduce complexity, as the desired behaviour is unclear without a use case for it. Note that the primary scenario requiring URL override is when using a DOMParser, and then I suppose one cannot have iframes anyhow — I had imagined one might have manually set an iframe’s contentDocument to another URL-less document, but its value is read-only; and if some other DOM implementation lets you set that, it could probably let you set document.URL too, removing the need to override it.

view details

push time in 2 months

GollumEvent

issue openedapache/incubator-annotator-website

Make full demo for “Getting Started”

Perhaps as its own repo, to give a full example (including any build tools), that people could also just copy and start from.

created time in 2 months

push eventapache/incubator-annotator-website

Gerben

commit sha fb163ad92da716ecb2469a4646f1fdb0a4bea029

Add blank template

view details

push time in 2 months

issue openedapache/incubator-annotator-website

Have docs for multiple versions

As a simple solution, we could just put a snapshot /docs/v0.2.0/, and continue editing in /docs/dev/, perhaps?

created time in 2 months

issue closedapache/incubator-annotator-website

`yarn build` fails due to package path concatenation failure

Looks like a simple string/path concatenation problem (probably upstream in the demo code?): "Module not found: Error: Can't resolve 'C:\Users\b\dev\apache\incubator-annotator-website\annotator\ packagesdom \src\index.ts' in 'C:\Users\b\dev\apache\incubator-annotator-website\annotator\web\demo'" (see the bold bit above)

Raw error below...

ERROR in ./demo/index.js
Module not found: Error: Can't resolve 'C:\Users\b\dev\apache\incubator-annotator-website\annotator\packagesdom\src\index.ts' in 'C:\Users\b\dev\apache\incubator-annotator-website\annotator\web\demo'
 @ ./demo/index.js 26:0-273 90:23-53 91:26-59 92:19-49 190:32-46 238:19-39 247:19-36
 @ multi ./demo/index.html ./demo/index.js

ERROR in ../packages/dom/src/text-position/describe.ts
Module not found: Error: Can't resolve 'C:\Users\b\dev\apache\incubator-annotator-website\annotator\packagesselector\src\index.ts' in 'C:\Users\b\d...

closed time in 2 months

BigBlueHat

issue commentapache/incubator-annotator-website

`yarn build` fails due to package path concatenation failure

This was fixed in https://github.com/apache/incubator-annotator/pull/105

BigBlueHat

comment created time in 2 months