profile
viewpoint
Rasmus rsms Figma San Francisco https://rsms.me/ Languages, compilers, making computers talk with eachother, and other fun things. Professional life is at Figma; previously Facebook, Spotify, Dropbox and more

rsms/chromium-tabs 383

[historical] Chromium tabs for cocoa applications (project no longer maintained)

rsms/cocui 333

Cocoa meets WebKit for more rapid UI development

rsms/ec2-webapp 325

A template I use to quickly set up Node.js-backed web apps on Amazon EC2

rsms/estrella 148

Light-weight runner for the esbuild compiler

rsms/co 114

A programming language in early development

rsms/afcgi 99

Asynchronous/multiplexing FastCGI for nginx (incl. ref server implementation)

liesen/libspotify-node 52

Node bindings for libspotify

rsms/dropub 39

DroPub — drop and publish. Simple OS X MenuItem managing secure transfer of files in the background

rsms/browser-require 22

CommonJS module require() for web browsers

rsms/dropular-2010 21

Redacted snapshot of dropular.net, May 2010

create barnchrsms/estrella

branch : v1.2-wip

created branch time in 11 hours

issue commentevanw/esbuild

false positive: use of require.resolve causes unexpected warning (v0.7.4)

I tried flagging the files required and resolved as external but it seems that only "named" imports (as in names of node_modules) are supported.

Here's my scenario:

  • I'm building a node program which consists of two products: program.js, debug.js
  • The entry point of the program is program.js
  • It loads debug.js only when some edge-case stuff happens (to reduce startup cost as its a CLI program)
  • Another thing it does it to report the version of esbuild when an error occurs, which is useful for people when they submit bug reports.

Snippet: product file layout

package.json
dist/estrella.js  <-- CLI program
dist/debug.js     <-- 40kB of code loaded as needed

Snippet: Loading additional code just-in-time

Error.prepareStackTrace = (error, stack) => {
  const debug = require(Path.join(__dirname, "debug.js"))
  return debug.prepareStackTrace(error, stack)
}

Snippet: Getting the esbuild version

function getEsbuildVersion() {
  try {
    return JSON.parse(resolveModulePackageFile("esbuild")).version
  } catch (_) {
    return "(unknown)"
  }
}

function resolveModulePackageFile(moduleSpec) {
  const mainfile = require.resolve(moduleSpec)
  let dir = Path.dirname(Path.resolve(mainfile))
  let lastdir = Path.sep
  while (dir != lastdir) {
    let pfile = Path.join(dir, "package.json")
    if (fs.existsSync(pfile)) {
      return pfile
    }
    dir = Path.dirname(dir)
  }
  throw new Error(`package.json not found for module ${moduleSpec}`)
}

An expensive work-around would be to make each product file its own separate node module, flag those as external and import them with e.g. require("estrella-debug"). That would make the project setup too complex IMHO.

For now I've found a good work-around that avoids the warning:

const runtimeRequire = eval("require")
// replace all uses of require with runtimeRequire

Thanks Evan!

rsms

comment created time in 18 hours

issue commentevanw/esbuild

false positive: use of require.resolve causes unexpected warning (v0.7.4)

Interesting. I'm surprised to learn that!

I'd argue that from an idealistic standpoint, evaluating require.resolve at compile time is a mistake. It's clearly a runtime function in the world of Nodejs and its result is non-deterministic (depends on the host's state at the time of calling the function.)

Personally I'd like to see only deterministic function results evaluated & inlined by a compiler. For example Math.max(1,2,3) => 3. For other data that a project may want to embed into its code, rather than compute at runtime, I think it's better to use code generation and either use imports or esbuild's define functionality.

rsms

comment created time in 2 days

issue openedevanw/esbuild

false positive: use of require.resolve causes unexpected warning (v0.6.34)

I appreciate the helpful warning messages esbuild emits when it detects that I've done something janky. However it seems that the sophistication of detecting use or require could use some improvement, in particular with the require.resolve function.

Repro: main.js

console.log(require.resolve("foo"))
$ esbuild --version
0.6.34
$ esbuild --bundle main.js
main.js:1:12: warning: Indirect calls to "require" will not be bundled
console.log(require.resolve("foo"))

For a program like Estrella it is sometimes useful to poke around for node modules without using their code, for example to read package.json files.

created time in 4 days

issue commentrsms/estrella

nodemon like option

Ah, I like it. Perhaps executable:bool|string is a better name though.

Funnily, I thought I had added another comment after previous one, but I had forgot to submit it :–P Screen Shot 2020-09-21 at 13 25 13

Another idea, if the "executable condition" approach is not right:

const { build } = require('estrella')
build({
  entry:   "src/tool.js",
  outfile: "dist/bin/tool",
  run: "node $outfile -test",
})
build({
  entry:   "src/lib.js",
  outfile: "dist/lib.js",
})

When running ./build.js then all products with a truthy run property would be selected to execute. If the value of the run property is a string, that string is passed to a shell to be executed, substituting $outfile for the path of outfile. (The run property could also support an array value of arguments to be executed instead of a shell script.)

Note the lack of -run CLI arg; instead the build script author can conditionally enable running certain programs.

const { build } = require('estrella')
build({
  entry:   "src/tool.js",
  outfile: "dist/bin/tool",
  run: "node $outfile -test",
})
holtwick

comment created time in 6 days

issue commentrsms/estrella

nodemon like option

Oh, nice idea. I usually use autorun in a second shell when programming reactively.

With the -run CLI argument, what would you do if the build script builds multiple programs? Would you run them all or run the first one defined?

I think "run them all" is the answer. Optionally only products that are executables could be selected for being run (i.e. when the executable bit is set in the outfile's mode, which can be controlled via the outfileMode:"+x" build property.)

For example:

const { build } = require('estrella')
build({
  entry: "src/tool.js",
  outfile: "dist/bin/tool",
  outfileMode:"+x",
})
build({
  entry: "src/lib.js",
  outfile: "dist/lib.js",
})

Running ./build.js -run would run dist/bin/tool (since it's executable) but not dist/lib.js

What do you think @holtwick?

holtwick

comment created time in 8 days

push eventrsms/rsms-utils

Rasmus Andersson

commit sha de7c4981fff8c67e2747cc0ab9410cb870294758

move to bin subfolder

view details

push time in 8 days

push eventrsms/rsms-utils

Rasmus Andersson

commit sha 13d7e446a86ad3581ff15b9384d9fb2d3f861cee

adds color-space and updates the repo

view details

push time in 8 days

push eventrsms/js-wasmc

Rasmus Andersson

commit sha 2e01d27de31d2c537ac980d32250798fda7a11c4

npm audit fix google-closure-compiler > minimist

view details

push time in 9 days

created tagrsms/js-wasmc

tagv2.1.0

Simplifies building of WebAssembly modules in C/C++ and JS

created time in 9 days

delete tag rsms/js-wasmc

delete tag : v2.1.0

delete time in 9 days

created tagrsms/js-wasmc

tagv2.1.0

Simplifies building of WebAssembly modules in C/C++ and JS

created time in 9 days

push eventrsms/js-wasmc

Rasmus Andersson

commit sha b61f3bb44feb15c3074b346bac479e6c7c494d9f

Fixes & improves a few things - Fixes a bug where require() in wasmc.js would not be relative to wasmc.js. - Fixes an issue where writing output files would fail if the parent directory didn't exist. Parent directories are now created if needed. - If duplicate module names are used, exit with an error and point out the offending line in wasmc.js. - WASM filename can now be explicitly set by passing the `outwasm` property to module().

view details

Rasmus Andersson

commit sha 8c09e740fde2a3ab746610d523e24204bd4c7b17

build and dist script

view details

Rasmus Andersson

commit sha 0db00a8744f9a7ed0c4782f09da4c7e49a8ef741

v2.1.0

view details

push time in 9 days

issue commentrsms/markdown-wasm

UTF-8 support should likely be enabled in MD4C.

Nice! Thank you for the information :–)

mity

comment created time in 10 days

issue commentrsms/markdown-wasm

Unexpected escaping within code blocks

I've enabled highlight.js on the markdown-wasm website so you can try it out: https://rsms.me/markdown-wasm/#code-poetry

Try something like this and look at the HTML using your browser's web inspector:

```js
const f = () => {}
```
drwpow

comment created time in 10 days

push eventrsms/markdown-wasm

Rasmus Andersson

commit sha ded168b8682433b8fe3c5a9bf80939f49a83311e

website: enable code syntax highlighting via highlight.js

view details

push time in 10 days

issue commentrsms/markdown-wasm

Unexpected escaping within code blocks

I think I understand. Let me repeat your concern, phrased in a different way to see if I get it.

So, given this markdown source code:

```
a => b
```

You expect the following HTML output:

<pre><code>a => b</code></pre>

If this is correct then that is not going to work since > is a special character in HTML (as I'm sure you know.) I.e. if you instead consider this markdown:

```
<script>alert(document.cookies)</script>
```

You would get the HTML output:

<pre><code><script>alert(document.cookies)</script></code></pre>

This would be bad.


It seems to me that your end goal here is to process the code through a syntax highlighter. There may be better ways to go about that.

Option 1: you could use a syntax highlighter that works with HTML-escaped code, like highlight.js

Option 2: you could run the syntax highlighter on the markdown text, before you pass it on to markdown-wasm. However, if you do this, you won't be able to set NO_HTML_BLOCKS or NO_HTML_INLINE flags, which can be used to strengthen the safety of markdown-wasm, i.e. to avoid XSS issues.

Option 3: we could consider adding a feature to markdown-wasm where you set a flag, like for example CDATA_CODE_BLOCKS that, when set, outputs code blocks with verbatim code wrapped in <![CDATA[...]]>.

drwpow

comment created time in 10 days

push eventrsms/gotalk

Rasmus Andersson

commit sha aac0697e8af12e831f5908dba281ea38941f5889

fixes small bug introduced in last commit re MakeHeartbeatMsg

view details

push time in 10 days

push eventrsms/gotalk

Rasmus Andersson

commit sha c141374c49d87d76f4e40dbdc6ff89ef85d15433

improved unit tests and some minor api changes to protocol

view details

push time in 10 days

release rsms/gotalk

v1.1.4

released time in 10 days

created tagrsms/gotalk

tagv1.1.4

Async peer communication protocol & library

created time in 10 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 2e73513660c94cf08f7b9efb31a3ee89816ce150

Deprecate NewHandlers() in favor of Handlers{}

view details

Rasmus Andersson

commit sha 2c973ddc91a6f8d976bd4f082d934d9d9620347d

bump version

view details

push time in 10 days

pull request commentrememberlenny/figma-variable-fonts

Update README.md

😆

davelab6

comment created time in 10 days

startedrememberlenny/figma-variable-fonts

started time in 11 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 560429025be536c52a9ea6cdc1d2e98c493486c1

minor makefile change

view details

push time in 12 days

release rsms/gotalk

v1.1.3

released time in 12 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 8cd1f79be96d16944991e7696af689060b6737d2

updated js lib with improvements to gotalk.defaultResponderAddress

view details

Rasmus Andersson

commit sha b69f460e762b506578b57f7225a8d9e9cd307e8c

bump version

view details

Rasmus Andersson

commit sha d7771a8a7b5b3d81532eee125a4b79349d005d8f

bump version

view details

Rasmus Andersson

commit sha f3fb8eb76363b7f0252b314bb82e00a42db07438

js: adjust build script to produce jslib.go file that is gofmt compliant

view details

push time in 12 days

created tagrsms/gotalk

tagv1.1.3

Async peer communication protocol & library

created time in 12 days

issue closedrsms/inter

Italic angle inverted "when reopening Italic font files" in Glyphs

Describe the bug Opening Italic weights in Font Editor Glyphs leads to strange behavior. The canvas appears flipped, it should be tilted towards right instead of left. Not sure wether this leads to any problems.

To Reproduce

  1. Open Inter Italic in Glyphs Version 2.6.5 (1342)
  2. Doubleclick on Glyph to enter Edit Mode

Screenshots

Bildschirmfoto 2020-07-05 um 13 54 49

Environment

  • OS: Mac OS X Catalina
  • Glyphs Version 2.6.5 (1342)
  • Inter 3.12

closed time in 12 days

Felix-MFU

issue commentrsms/inter

Consider type.today's Cyrillic review

I'm not a Cyrillic native myself and I think I've exhausted my capacity in this area but that said, it would be fantastic if a type designer skilled in Cyrillic could help this project out!

Check out https://github.com/rsms/inter/blob/master/CONTRIBUTING.md to get started

vladklokun

comment created time in 12 days

issue closedrsms/inter

Add EOT, TTF and SVG file format

First of all, I am grateful for Inter's existence this really suits our site's brand.

We are planning to locally host this font on our site. I got the file formats that we needed (WOFF, EOT, TTF, and SVG) here in google-webfonts-helper.

But it's missing the italics font. And I'm curious where cold I find these file formats for Inter Italics Latin. I only needed the Latin to have it more optimized.

Super thanks for the help! :)

closed time in 12 days

alyannangeline

issue commentrsms/inter

Add EOT, TTF and SVG file format

This is a question about google fonts. Please ask at https://github.com/google/fonts/issues

alyannangeline

comment created time in 12 days

issue closedrsms/inter

.otf files in "Inter Desktop" directory work strangely?

Bug (I think): If I look at the fonts in the "Inter Desktop" directory, they have some weird behavior in Windows - for the sizes 60 and above, it uses Inter...below 60, it's replacing with something else (guessing Arial). It does this for all of the fonts in "Inter Desktop" - but doesn't do it in the other directories ("Inter Hinted for Windows", etc.).

If I run the fonts in "Inter Desktop" through the fontsquirrel "opentype flattener" tool at https://www.fontsquirrel.com/tools/webfont-generator, the resultant fonts are fine. So this may be a font issue, it may be a Windows issue.

Steps to reproduce the behavior:

  1. Installed the font from https://rsms.me/inter/
  2. Opened fonts in Windows

inter font change

  • OS: Windows
  • App that renders the font: Native Windows font viewer
  • Version of font 3.015;git-7f5c04026

I really do like the font - it's my preference for Windows UI replacement...thank you!

closed time in 12 days

eckless

issue commentrsms/inter

.otf files in "Inter Desktop" directory work strangely?

@eckless let me know if you think this is an issue beyond just the old font preview app in Windows and we can reopen the investigation. To me, it seems to work fine everywhere except in that app.

It may be so that Inter's OTF fonts contains some data that stumbles that app, but it would be almost impossible for me to debug that. It would be better if someone at Windows working on fonts would do the debugging, as whatever QA font tools I run on the inter fonts (which are produces by fonttools which is the most popular font compiler) there are no issues.

eckless

comment created time in 12 days

issue commentrsms/inter

.otf files in "Inter Desktop" directory work strangely?

Here is some text in WordPad, first with the TTF font installed: Screen Shot 2020-09-15 at 09 10 23

And now, after uninstalling the TTF and installing the OTF font: Screen Shot 2020-09-15 at 09 09 19

Essentially identical results. Rendering is really poor but this is generally true in Windows (unfortunately.)

Rendering in Edge is much better: Screen Shot 2020-09-15 at 09 17 16

https://codepen.io/rsms/full/NWNBdMb

<html lang="en">
<head><meta charset="utf-8"></head>
<body style="font-family: 'Inter ExtraLight';font-size: 16px;">
<h1 style="font-weight:100">Rag123</h1>
<h2 style="font-weight:100">Rag123</h2>
<h3 style="font-weight:100">Rag123</h3>
<p>Rag123</p>
</body></html>
eckless

comment created time in 12 days

issue commentrsms/inter

.otf files in "Inter Desktop" directory work strangely?

I mean, clearly Windows is able to parse and correctly render OTF CFF since size 48 and upwards is correct so this may be a bug in Windows or a bug with that specific app that shows the preview. If I install the OTF file, I can correctly use it elsewhere including the modern font manager in Windows settings: Screen Shot 2020-09-15 at 09 03 24

So, I'm pretty sure this mean that there's an issue with that older font preview app.

@eckless after installing the OTF, do you have issues in other apps with the font?

eckless

comment created time in 12 days

issue commentrsms/inter

.otf files in "Inter Desktop" directory work strangely?

Interesting. I can reproduce on Windows 10 Pro with the OTF files. My guess is that Windows struggles with CFF OTF font data, which is what Inter uses for OTF. When you give that font to fontsquirrel, they convert all vector graphics to TTF curves which is why it works. If you install the TTF fonts on Windows instead it should look good. Use the folder called "Inter Hinted for Windows".

Repro with OTF on Windows 10 Screen Shot 2020-09-15 at 08 56 48

Looks good when I install the TTF fonts instead Screen Shot 2020-09-15 at 08 53 47

Notes: This UI refuses to accept OTF fonts. Trying to drag and drop an otf file on the big surface shows an "x" cursor and nothing happens. This may be an indication of some issue or some limitation in Windows. Screen Shot 2020-09-15 at 08 56 36

eckless

comment created time in 12 days

issue commentrsms/inter

.otf files in "Inter Desktop" directory work strangely?

Wow, that is really strange. What exact version of Windows do you use?

eckless

comment created time in 13 days

PR closed rsms/gotalk

fix issue #10
+173 -106

0 comment

5 changed files

oskca

pr closed time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha dca38eca8a2be63c08d785670d2865470ad7e7a0

makefile: release

view details

push time in 13 days

release rsms/gotalk

v1.1.2

released time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha a69f19ba7e5a238c29e47400c343581661866083

js: use estrella/esbuild for a simpler build system and improve inference of defaultResponderAddress

view details

Rasmus Andersson

commit sha 3368ce638dd5190ca6098c7721511fcb8c9ed349

adds godoc documentation for the package

view details

Rasmus Andersson

commit sha cf45598dec40008ce28bafb4b4ad94f971657c03

improved examples/websocket-minimal

view details

Rasmus Andersson

commit sha 09823461d4b1f76428a63eb3091e12e5bebe99ef

improves serving of the built-in js library; now using gzip compression when the http client accepts it and also precomputes the http response to simplify the reply

view details

Rasmus Andersson

commit sha 5231a175f5752d67368933308deccdaa82117ebf

readme: doc urls

view details

Rasmus Andersson

commit sha c022bc59bde7dc76a5626a25303c071277811c46

makefile: add doc target for running godoc

view details

Rasmus Andersson

commit sha a4de68fecc6a64d975db81229a14b1fc6765e12b

.gitignore

view details

Rasmus Andersson

commit sha a8636e1744eb31d733f0f1c0ec63ea4331b519f7

bump version

view details

push time in 13 days

created tagrsms/gotalk

tagv1.1.2

Async peer communication protocol & library

created time in 13 days

created tagrsms/estrella

tagv1.1.1

Light-weight runner for the esbuild compiler

created time in 13 days

push eventrsms/estrella

Rasmus Andersson

commit sha 6692eaca6b0377e228e72ae74b2d57e42040f06d

exports a few convenience functions like file.read

view details

Rasmus Andersson

commit sha f9d735e1b934e4b50baee921967c85e57ac5eb93

release v1.1.1

view details

push time in 13 days

push eventrsms/estrella

Rasmus Andersson

commit sha 62a4fc67e59fda4c9aca3ebce36072cf4592657c

adds link to esbuild type defs

view details

push time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 0f1a4c6401c169bf3cd291f7327e143404195da9

readme

view details

push time in 13 days

issue commentrsms/gotalk

Any Plans to add clustering?

No plans to add this to gotalk, but you can run gotalk on any transport, so it should be possible to run on top of something existing that can distribute TCP/IP connections (or HTTP connections.)

julianfrank

comment created time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 19a7a4765caa1b8f3b5463ced8aa3573240c9158

examples: documentation, plus removes a defunct old example

view details

push time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha b1b27bf49ce8c5289b503139ba070e5ed11c7b7b

makefile: improved release target

view details

Rasmus Andersson

commit sha 6293262d9bdc25fa0b817fd07457a8c9828e660f

gofmt -s to simplify some code

view details

push time in 13 days

release rsms/gotalk

v1.1.1

released time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha eaf98f03440442f6018cf8187fff8896e4cd2865

"build" release: only metadata (readme and license)

view details

push time in 13 days

created tagrsms/gotalk

tagv1.1.1

Async peer communication protocol & library

created time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 3d9aa5c4b9341d045dfd41cb2cdc10bd0dff10e2

gofmt

view details

Rasmus Andersson

commit sha 8c835b3526168ec596f96a601637a6fd6893a367

makefile

view details

Rasmus Andersson

commit sha dc53f1c7973a4c93216a24273b2d4a1702f660c8

makefile: improve release target

view details

push time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 6c3d2f84482a1f9532227550249d3272099252f1

move license from README into separate LICENSE.txt file. Also updates README

view details

push time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 7a3e646e5a3f59aba8b7ca8f79681f7687329818

remove changelog in favor of using github

view details

push time in 13 days

release rsms/gotalk

v1.0.0

released time in 13 days

release rsms/gotalk

v1.0.1

released time in 13 days

release rsms/gotalk

v1.1.0

released time in 13 days

issue commentrsms/gotalk

Add an example with encrypted connections.

There's now a new TLS example here https://github.com/rsms/gotalk/tree/master/examples/tls and v1.1.0 adds some convenience functions for making it easier to use TLS like ListenTLS and ConnectTLS.

wmark

comment created time in 13 days

created tagrsms/gotalk

tagv1.1.0

Async peer communication protocol & library

created time in 13 days

push eventrsms/gotalk

Rasmus Andersson

commit sha a7bb2e180d8d5192d3a8bdb8665a176ee1033757

Adds improved TLS support Closes #3

view details

push time in 13 days

issue closedrsms/gotalk

Add an example with encrypted connections.

Please add an example for establishing encrypted connections. A quite important feature nowadays.

You are welcome to include my script if you use TLS: https://gist.github.com/wmark/c758ce1c2b8222afd69d

closed time in 13 days

wmark

issue commentrsms/gotalk

Add an example with encrypted connections.

Note that for HTTP, gotalk operates over whatever transport the server uses, so if you run gotalk in a https server with go, data is encrypted.

So, no tests or examples needed for encrypted HTTP. What could be useful is an example of plain TCP connections with TLS.

wmark

comment created time in 14 days

issue commentrsms/gotalk

Protocol test suite

2c048e74cc87385dbcc2c82abd6f12f38e4f5cba adds a test suite that tests some aspects of communication in practice.

To try it:

git pull && make test
alecthomas

comment created time in 14 days

issue closedrsms/gotalk

[gotalk.js] Uncaught ReferenceError: s is not defined

when using gotalk.js in browser side, Sock.notify and Sock.stopSendingHeartbeats all have the error message:Uncaught ReferenceError: s is not defined. When I'm looking through the code I found this in gotalk/index.js:

Sock.prototype.stopSendingHeartbeats = function() {
  clearTimeout(s._sendHeartbeatsTimer);
};

and this for Sock.bufferNotify

Sock.prototype.bufferNotify = function(name, buf) {
  s.sendMsg(protocol.MsgTypeNotification, null, name, 0, buf);
}

is this right?

closed time in 14 days

oskca

issue commentrsms/gotalk

[gotalk.js] Uncaught ReferenceError: s is not defined

Fixed in c77cf4e923ee2cfe8f26f24ef3c34baf052dc02e

oskca

comment created time in 14 days

issue closedrsms/gotalk

Is this project maintained?

closed time in 14 days

zj8487

push eventrsms/gotalk

Rasmus Andersson

commit sha cfc0e60f50cb6b034ded685b68476081627212a6

readme

view details

push time in 14 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 5b57488857126d427581925b61047b20fc78b793

makefile

view details

push time in 14 days

push eventrsms/gotalk

Rasmus Andersson

commit sha 2c048e74cc87385dbcc2c82abd6f12f38e4f5cba

update examples, makefile and add gotalk.Version constant

view details

Rasmus Andersson

commit sha 77c9a9726a17adcfa1373c44447b753aab0ea2f1

bump version

view details

push time in 14 days

created tagrsms/gotalk

tagv1.0.1

Async peer communication protocol & library

created time in 14 days

push eventrsms/gotalk

Rasmus Andersson

commit sha ff465a63cb946c8d133dfe9c3d04428dd4dc18ba

enable go mod

view details

push time in 14 days

created tagrsms/gotalk

tagv1.0.0

Async peer communication protocol & library

created time in 14 days

created tagrsms/estrella

tagv1.1.0

Light-weight runner for the esbuild compiler

created time in 25 days

push eventrsms/estrella

Rasmus Andersson

commit sha 5b894fd9c16d7cc0cb587627312e5fbf9ccddb49

switches out the file system watcher for chokidar/fsevents

view details

Rasmus Andersson

commit sha e527dccb313fdd7bd0036de446cb7e39ff6f5153

screen.js comment about ANSI escape codes

view details

Rasmus Andersson

commit sha 63bfce413a39682ae3903cdbd8012d13458b3db0

adds rescue build to test/test.sh

view details

Rasmus Andersson

commit sha 572c8a710ad907ac33c8f428c268575b059d07c4

upgrades esbuild, adjusts estrella to changes in esbuild 0.6 and removes version.txt in favor of package.json

view details

Rasmus Andersson

commit sha d97dce9e8c63324e443c35aea0a80ed763e73dec

release v1.1.0

view details

push time in 25 days

issue closedevanw/esbuild

minify-syntax bug: conditional yields "??" in final source code

Repro:

  1. install esbuild 0.6.29 from npm
  2. create file main.js (see below)
  3. run esbuild --platform=node --minify-syntax --outfile=out.js main.js
  4. Inspect and/or attempt to evaluate resulting out.js

main.js

function f(x) {
  x = x != null
    ? x
    : 1
  if (!x) {
    this.z()
  }
}
f(self["x"])

out.js

function f(x) {
  x = x ?? 1, x || this.z();
}
f(self.x);

evaluating the out.js file in nodejs:

$ node out.js
/Users/rsms/src/ext/esbuild/bug-chokidar-isDirectory/out.js:2
  x = x ?? 1, x || this.z();
         ^
SyntaxError: Unexpected token '?'

This repro was reduced from real code in the popular chokidar package (i.e. import that package and build with minification yields the same bug; grep for isDirectory = isDirectory in the chokidar source code.)

env:

  • macOS 10.15
  • nodejs 12.16.3
  • esbuild 0.6.29

closed time in 25 days

rsms

issue commentevanw/esbuild

minify-syntax bug: conditional yields "??" in final source code

Thank you! I wonder if there is an opportunity to produce a warning somehow when the invocation relies on default values and may be using cutting-edge features. Just an idea.

rsms

comment created time in 25 days

issue openedevanw/esbuild

minify-syntax bug: conditional yields "??" in final source code

Repro:

  1. install esbuild 0.6.29 from npm
  2. create file main.js (see below)
  3. run esbuild --platform=node --minify-syntax --outfile=out.js main.js
  4. Inspect and/or attempt to evaluate resulting out.js

main.js

function f(x) {
  x = x != null
    ? x
    : 1
  if (!x) {
    this.z()
  }
}
f(self["x"])

out.js

function f(x) {
  x = x ?? 1, x || this.z();
}
f(self.x);

This repro was reduced from real code in the popular chokidar package (i.e. import that package and build with minification yields the same bug)

env:

  • macOS 10.15
  • nodejs 12.16.3
  • esbuild 0.6.29

created time in 25 days

issue commentelementary/triage

Improve font settings for Inter

Font hinting is really a matter of preference, similar to how sub-pixel anti-alias is a matter of preference (btw, note that these things are different concepts.) It may be a good idea to provide these two as user options in system settings. Windows has both these options and macOS has sub-pixel anti-aliasing only as an option (macOS doesn't even implement hinting; they never have. Same with iOS, no hinting.)

cassidyjames

comment created time in a month

issue commentelementary/triage

Improve font settings for Inter

It may be so that FreeType or GTK or whatever drives the text renderer enables ClearType-like hinting below a certain text size (or more likely and specifically, rasterization size.)

cassidyjames

comment created time in a month

issue commentrsms/inter

Please clarify if "Inter" is a reserved font name for OFL license

Thanks! I've removed the RFN and asserted a trademark instead.

Knagis

comment created time in a month

push eventrsms/inter

Rasmus Andersson

commit sha ca221fe038d6fbad4d9333bc90e63a1603f955c5

remove RFN from license, add trademark notice. related to #282

view details

push time in a month

issue closedrsms/inter

Inter V (v3.14) does not show up on fonts list when installed

Describe the bug The file cannot be seen in the fonts list of Windows 10 when installed. All other individual fonts work.

To Reproduce Simply install the variable version of the font. There will be no "Inter Variable" in the Windows Fonts list

Expected behavior It should show up on the list once installed.

Environment

  • OS: Windows 10 build 2004
  • v3.14

closed time in a month

dancristino18

issue commentrsms/inter

Inter V (v3.14) does not show up on fonts list when installed

OTF and TTF are really interchangeable. You can rename the filename to .otf and it works :–) By convention font files with CFF curves usually use .otf filenames while font files with TT curves use .ttf. Inter's variable font uses TT curves and thus the .ttf filename extension. The static "desktop" .otf font files in the downloadable zip archive use CFF curves (which is experimental for variable fonts and not yet widely supported, plus woff2—the standard web font format—only supports TT curves as far as I know.)

The issue was incorrect/missing metadata in the font file. The v3.15 release incorporates a fix for that which is why it worked :–)

Thanks for testing & verifying!

dancristino18

comment created time in a month

issue commentrsms/inter

Ability to "compile" font files with certain glyphs/features configurations

Update on subsetting: 4eee1377a7c68be4bb6dd6246c170508564de74e adds a subset program which when run generates chunks of subset font files and accompanying CSS.

57e80b4ab06b6b80a2bf1b35fd7aa8efdbafa0f0 deploys this to the website and CDN. This mean that if you are loading inter from https://rsms.me/inter/inter.css you will automatically use subset/split font files. If you serve font files yourself, you'll want to download the subset font files from github:inter/docs/font-files

In most cases you should see improved load times over slow network connections: Screen Shot 2020-08-21 at 16 12 49

beojan

comment created time in a month

push eventrsms/inter

Rasmus Andersson

commit sha 3f77ae1a393fde010bb297b5e3baa244447ea154

web: adds missing InterDisplay subset font files

view details

push time in a month

push eventrsms/inter

Rasmus Andersson

commit sha 4eee1377a7c68be4bb6dd6246c170508564de74e

tooling: adds a program that create subset web font files and accompanying CSS

view details

Rasmus Andersson

commit sha 15e2d60523565b94aafdf31f3e61ae7ab8f7de3e

tooling: adds subset program to be run for docs_fonts in Makefile

view details

Rasmus Andersson

commit sha 57e80b4ab06b6b80a2bf1b35fd7aa8efdbafa0f0

web: enable use of subset web font files (for variable fonts only)

view details

push time in a month

push eventrsms/inter

Rasmus Andersson

commit sha 79630f45e92036d73e2f723bf6a728274307cf65

web: remove noise effect

view details

push time in a month

push eventrsms/inter

Rasmus Andersson

commit sha e3927d36a53e052b5a52f24c59c4279cf31f06df

web: update some sample images

view details

push time in a month

issue commentrsms/inter

ClearType rendering issue with transformed components (was "Braces are asymmetric for some font sizes")

Some ClearType rendering samples from Windows 10 using the v3.15 hinted font files:

cleartype-samples@2x

ForNeVeR

comment created time in a month

push eventrsms/inter

Rasmus Andersson

commit sha d86c8641527fce31282cd0b59d77621d4b1bc448

misc: update misc/tools/download-count.py

view details

push time in a month

CommitCommentEvent

issue commentrsms/inter

ClearType rendering issue with transformed components (was "Braces are asymmetric for some font sizes")

This has now been released as part of version 3.15 🎉 Try it out here: https://rsms.me/inter/lab/

ForNeVeR

comment created time in a month

issue commentrsms/inter

`STAT` has an empty DesignAxisRecord

This has now been released as part of version 3.15 🎉 Try it out here: https://rsms.me/inter/lab/

be5invis

comment created time in a month

issue commentrsms/inter

Improved Elfdalian support

This has now been released as part of version 3.15 🎉

u8is

comment created time in a month

push eventrsms/inter

Rasmus Andersson

commit sha dc3b56dac76a57ec5b0b43690595d946492d15a7

web: update samples, adding cleartype rendering samples

view details

push time in a month

push eventrsms/inter

Rasmus Andersson

commit sha b7435015ca9b0e5a2ac33ac1e4c7a924a11397a7

web: update version in resource urls

view details

push time in a month

more