profile
viewpoint
TJ Holowaychuk tj Apex London, UK https://apex.sh Founder of Apex • https://apex.sh/blog/ • https://twitter.com/tjholowaychuk • https://instagram.com/tjholowaychuk • http://tjholowaychuk.com

apex/up 7541

Deploy infinitely scalable serverless apps, apis, and sites in seconds to AWS.

JustinTulloss/zeromq.node 1661

Node.js bindings to the zeromq library

apex/gh-polls 1526

Polls for user feedback in GitHub issues

c4milo/gsync 317

gSync is an rsync based library for sending delta updates of files to a remote server.

apex/static 297

The static site anti-framework – general-purpose library, purpose-built commands for various domains

koajs/koa-hbs 149

Handlebars templates for Koa.js

apex/gui 128

GitHub readme UI components

littlstar/axis360 121

Axis360 is a panoramic (360 video) rendering engine

apex/apex-ui-slim 75

Apex monochrome Atom theme UI (slim variant)

littlstar/starplate 66

Lightning fast template and view engine built on top of Incremental DOM and Babel (ES6 Templates + Incremental DOM working together)

created tagapex/httplog

tagv1.0.0

Go http logger for apex/log.

created time in 3 hours

push eventapex/httplog

TJ Holowaychuk

commit sha 3b010b2715ffa34c0d59a2ebad4bcda000108a52

add go.mod

view details

push time in 3 hours

push eventapex/httplog

TJ Holowaychuk

commit sha b2d7a5235acd2a73f49d5f57e73ba95433b64eb8

change: duration field is now in milliseconds

view details

push time in 3 hours

issue commentgolang/go

proposal: spec: add sum types / discriminated unions

I can appreciate that it makes use of the existing features, but having to sprinkle private methods all over the place doesn't seem any simpler than just having unions. Having the compiler type check unhandled branches, and not requiring a default branch would also be nice. Being convoluted != simple IMO.

DemiMarie

comment created time in 4 days

pull request commenttj/go-progress

show gif

thanks!

kandros

comment created time in 4 days

push eventtj/go-progress

Jaga Santagostino

commit sha 167ee1e79966db8d7990087df8cec3d77acd3a6b

show gif the image links are broken, added a gif

view details

TJ Holowaychuk

commit sha c485e791f8d6c28d5f353a766cfc2266bdca6b44

Merge pull request #4 from kandros/patch-1 show gif

view details

push time in 4 days

PR merged tj/go-progress

show gif

the image links are broken, added a gif

+1 -3

0 comment

1 changed file

kandros

pr closed time in 4 days

issue commenttinygo-org/tinygo

Wasm callback functions working with Go 1.12, but not working with Go 1.13

I had luck with @jfreymuth's solution as well, although, I'm not sure what that breaks (if anything) haha

justinclift

comment created time in 5 days

issue openedtj/sponsors

Go WASM UI framework

I played with Go WASM a bit last year and failed. I think Rust is too overkill, Elm is too restrictive (from what I tried at least), and Go is not really expressive enough, but I still want to explore it some more, it would be great to use the same language everywhere, especially for #16.

created time in 6 days

issue openedtj/sponsors

Go desktop application toolkit

I've seen a few attempts at this, but nothing super polished & production ready quite yet. I'm not sure yet if I'll need this for any of my products, but something to think about.

created time in 6 days

issue commentapex/up

Up 2.0 — feature requests

@loganpowell thanks for the feedback! I definitely feel better with self-hosted as well, seems like most people prefer it which is good to know.

If I do a 2.0 the per-seat model would be great, the only problem I suppose is that say you're deploying in CI, then you effectively have one user/seat, so it might be a bit tricky with this kind of product.

tj

comment created time in 6 days

issue commenttj/go-update

Is there a license for this repo?

done :D

rawlingsj

comment created time in 7 days

push eventtj/go-update

TJ Holowaychuk

commit sha c6b6a2a75ba30935a6b00b92bdd75191f105b212

add license. Closes #12

view details

push time in 7 days

issue closedtj/go-update

Is there a license for this repo?

This looks like a helpful library, any chance you could add a license to it please?

closed time in 7 days

rawlingsj

issue commentgoogleapis/google-cloud-go

[Feature Request] Cloud Run

Why are there two official GCP packages? Some mention of google.golang.org/api in the docs would be helpful, this one seems to be missing quite a bit

hden

comment created time in 9 days

startedevanw/esbuild

started time in 9 days

issue commentapex/up

"Error: write EPIPE" on lambda errors (it worsens with provisioned concurrency)

Nice! Glad you found it, sounds good though I'll close in a few days if it seems like things are good to go

gagoar

comment created time in 11 days

push eventtj/node-prune

TJ Holowaychuk

commit sha 330b83e1fc4963b28206894403abcd3d604b84a3

remove goreleaser.yml

view details

push time in 11 days

startedknqyf263/cob

started time in 13 days

issue commentapex/up

"Error: write EPIPE" on lambda errors (it worsens with provisioned concurrency)

Interesting yea, really strange that it's intermittent. Regarding cold-start time you could try a bundler, just eliminating the requires alone seems to help quite a bit, but let me know if you find anything suspicious!

gagoar

comment created time in 13 days

issue commentapex/log

log.Panic

I guess I don't panic often haha, that's about it really

r03

comment created time in 13 days

PR closed apex/up-examples

Bump django from 1.11 to 1.11.28 in /oss/python-django dependencies python

Bumps django from 1.11 to 1.11.28. <details> <summary>Commits</summary>

  • e09f09b [1.11.x] Bumped version for 1.11.28 release.
  • 001b063 [1.11.x] Fixed CVE-2020-7471 -- Properly escaped StringAgg(delimiter) parameter.
  • 7fd1ca3 [1.11.x] Fixed timezones tests for PyYAML 5.3+.
  • 121115d [1.11.x] Added CVE-2019-19844 to the security archive.
  • 2c4fb9a [1.11.x] Post-release version bump.
  • 358973a [1.11.x] Bumped version for 1.11.27 release.
  • f4cff43 [1.11.x] Fixed CVE-2019-19844 -- Used verified user email for password reset ...
  • a235574 [1.11.x] Refs #31073 -- Added release notes for 02eff7ef60466da108b1a33f1e4dc...
  • e8fdf00 [1.11.x] Fixed #31073 -- Prevented CheckboxInput.get_context() from mutating ...
  • 4f15016 [1.11.x] Post-release version bump.
  • Additional commits viewable in compare view </details> <br />

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


<details> <summary>Dependabot commands and options</summary> <br />

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
  • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
  • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
  • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
  • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

You can disable automated security fix PRs for this repo from the Security Alerts page.

</details>

+1 -1

0 comment

1 changed file

dependabot[bot]

pr closed time in 14 days

startedlemire/simdjson

started time in 14 days

push eventtj/vscode-snippets

TJ Holowaychuk

commit sha 98d8fc0d9085a972792361052dfd3e2baf535a43

add main, package, and change "re" for Go

view details

push time in 14 days

issue commentapex/up

"Error: write EPIPE" on lambda errors (it worsens with provisioned concurrency)

What do you have configured for the lambda memory size? You probably already know this, but with lower memory limits such as 128mb the CPU is also limited, so having a lot of require()s can impact cold starts.

15s is pretty long though even in that case, I would start by throwing a few console.log()s in the app just to make sure it's reaching your http server's .listen(PORT) call.

gagoar

comment created time in 14 days

issue commenttj/node-prune

Support alpine image via gobinaries.com

sounds like you have to compile with musl-gcc for Alpine, I'll open an issue in my gobinaries.com repo (still closed source ATM)

TasukuUno

comment created time in 14 days

issue commenttj/node-prune

Support alpine image via gobinaries.com

hmm I imagine it should be linux/amd64, I'll boot up an Alpine container and see what's up, must not be detecting the env correctly

TasukuUno

comment created time in 14 days

issue closedtj/staticgen

Release binaries

Easier to install

closed time in 15 days

tj

issue commentapex/up

"Error: write EPIPE" on lambda errors (it worsens with provisioned concurrency)

Hmm thewaiting for .... to be in a listening state timeout should only appear if your application isn't listening on PORT, even if it's only in some Lambda's. Do you connect to a database or similar before allowing connections?

gagoar

comment created time in 15 days

push eventtj/impersonate

TJ Holowaychuk

commit sha 1c58b046fe9d31cf351990fc2a4316133860c288

docs: add gobinaries.com install

view details

push time in 16 days

created tagtj/impersonate

tagv1.0.0

Auth0 user impersonation utility, see what your customers see

created time in 16 days

push eventtj/robo

TJ Holowaychuk

commit sha d8145920c68aca6a32d08e5cf14c251f1930599f

docs: add gobinaries.com install option

view details

push time in 16 days

push eventtj/letterbox

TJ Holowaychuk

commit sha cf8b9c70c8bf6d44ff39034cb2adfa2731f6205d

docs: add gobinaries.com install

view details

push time in 16 days

created tagtj/node-prune

tagv1.1.0

Remove unnecessary files from node_modules (.md, .ts, ...)

created time in 16 days

push eventtj/node-prune

TJ Holowaychuk

commit sha 8e33bde413916fee58c127ece96f250175a8ecef

move cmd/node-prune to root

view details

TJ Holowaychuk

commit sha 888a2a83a0831d3f00d6090ea15da52fc46c29e4

Release v1.1.0

view details

push time in 16 days

push eventtj/node-prune

TJ Holowaychuk

commit sha 230a0214092d48540f4cc95d94ee08613252b317

docs: add gobinaries.com install option

view details

push time in 16 days

push eventtj/mmake

TJ Holowaychuk

commit sha e8bef561b6898a004bc329444f39bdff8dc47bca

add gobinaries.com installation method to the readme hope you dont mind :D. Ive been working on this as a side-project, should help make installations nice and quick for non-Go users

view details

push time in 16 days

push eventtj/staticgen

TJ Holowaychuk

commit sha 56159f789f16e4d76ca4cc9d10d58ec366dd881e

refactor: go mod tidy

view details

TJ Holowaychuk

commit sha 9dc2071477fae54ce36285fdde1f0c8898ad9315

docs: add gobinaries.com stuff

view details

push time in 16 days

push eventtj/triage

TJ Holowaychuk

commit sha 994fb89cf67a1ad8b92e9dc49f42bc9eb7022d6b

docs: add gobinaries.com

view details

push time in 16 days

push eventtj/nsqtop

TJ Holowaychuk

commit sha b50ccf25edf02b59842be54d65734cf82fe312ab

docs: remove old install stuff

view details

push time in 16 days

push eventtj/nsqtop

TJ Holowaychuk

commit sha 63ef0c3627beaa12a816b3409f66b049b0308666

docs: fix readme

view details

push time in 16 days

issue commentgolang/go

cmd/go: offer a consistent "global install" command

@jayconrod personally I think by using -g you're implying it's unrelated to the module dir you happen to be in, at least that's what I would expect, I think the same goes for almost every other package manager out there, it typically doesn't respect local deps.

mvdan

comment created time in 16 days

startedoligot/go-mod-upgrade

started time in 22 days

created tagtj/triage

tagv0.1.1

Interactive command-line GitHub issue & notification triaging tool.

created time in 22 days

push eventtj/triage

TJ Holowaychuk

commit sha f712b2c6d586844765ec7cdb600f3eab94847895

Release v0.1.1

view details

push time in 22 days

startedgoogle/farmhash

started time in 23 days

push eventtj/triage

TJ Holowaychuk

commit sha ad1936bf825807de86d106de64b1f86fefee68ba

fix panic from user input when no notifications are present. Closes #18 just treating all keyboard input as quit in this case, there are quite a few that would need guarding

view details

push time in 23 days

issue closedtj/triage

panic when pressing enter when all notifications are read

Prerequisites

  • [c] I searched to see if the issue already exists.

Description

when I get to the screen saying "you're all done", if I press enter, I get a panic

Steps to Reproduce

  • read all notifications
  • press enter

                                                                                                                             Looks like you're all done 😊panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
github.com/tj/triage.Update(0x1693360, 0xc00008d260, 0x1514e40, 0xc0001f3160, 0x153f480, 0xc0004ec000, 0x0, 0xc0004ec000, 0x0)
	/Users/carlos/Code/Go/pkg/mod/github.com/tj/triage@v0.1.0/update.go:295 +0x33f3
github.com/tj/go-tea.(*Program).start(0xc00008d2f0, 0x1693360, 0xc00008d260, 0x6, 0x0)
	/Users/carlos/Code/Go/pkg/mod/github.com/tj/go-tea@v0.2.0/tea.go:200 +0x538
github.com/tj/go-tea.(*Program).Start(0xc00008d2f0, 0x1693360, 0xc00008d260, 0x0, 0x0)
	/Users/carlos/Code/Go/pkg/mod/github.com/tj/go-tea@v0.2.0/tea.go:116 +0x1c1
main.main()

Slack

Join us on Slack https://chat.apex.sh/

I would try to fix it but its almost 4am and I need to 😴,didn't want to forget about it 🙏

closed time in 23 days

caarlos0

pull request commentapex/gateway

Add application/javascript as text mime type

thanks!

RaeesBhatti

comment created time in 23 days

push eventapex/gateway

Raees Iqbal

commit sha dc870622cf76e1fd7a0629ac948f6d18516e4262

Add application/javascript as text mime type (#28)

view details

push time in 23 days

PR merged apex/gateway

Add application/javascript as text mime type

application/javascript is a text mime type, added condition for that.

+1 -5

0 comment

1 changed file

RaeesBhatti

pr closed time in 23 days

issue commenttj/triage

panic when pressing enter when all notifications are read

Ah nice hahah.. I'll check this out today, should be a quick fix

caarlos0

comment created time in 23 days

startedintegrii/flaggy

started time in 25 days

startedvlang/v

started time in 25 days

push eventapex/logs

TJ Holowaychuk

commit sha 4dc7b2d03f12408febe42ab01d08252c9c9cbfe5

add LICENSE. Closes #5

view details

push time in a month

issue closedapex/logs

Missing LICENSE

Hello! Could you please commit a LICENSE file to specify how this project can be used in other projects? Thanks!

closed time in a month

jacknagz

issue commentapex/logs

Missing LICENSE

good call! added

jacknagz

comment created time in a month

created tagtj/staticgen

tagv1.0.1

Static website generator that lets you use HTTP servers and frameworks you already know

created time in a month

push eventtj/staticgen

TJ Holowaychuk

commit sha 662d23f2bea3c346fc705381c80523997ee420b7

add version command

view details

TJ Holowaychuk

commit sha 9303e7d41e1f33942c83c4fe230db942743f0be1

Release v1.0.1

view details

push time in a month

created tagtj/hello

tagv1.0.1

Ignore me, test pkg

created time in a month

push eventtj/hello

TJ Holowaychuk

commit sha 0ca5d4363a587da43b8ee1dd1a39c50bf4c5cfe5

lulz

view details

push time in a month

created tagtj/hello

tagv1.0.0

Ignore me, test pkg

created time in a month

create barnchtj/hello

branch : master

created branch time in a month

created repositorytj/hello

Ignore me, test pkg

created time in a month

created tagapex/log

tagv1.1.2

Structured logging package for Go.

created time in a month

push eventapex/log

TJ Holowaychuk

commit sha bef999bc8ce84263a325aa203f73b616fbf59ef4

Release v1.1.2

view details

push time in a month

push eventapex/log

TJ Holowaychuk

commit sha 6091ecc3bb7304f055b06a6fd1558d10d54bdbfa

refactor apexlogs handler to use github.com/apex/logs client

view details

push time in a month

issue openedapex/logs

go: fix markdown example

outdated, no longer has New()

created time in a month

push eventapex/logs

TJ Holowaychuk

commit sha a146047aa0c8e13881c8e4ff002a1e00218a2d8c

go: add Token.Scopes

view details

TJ Holowaychuk

commit sha 698ffa707291f1655369ba812aaea1e6553507ec

js: add Token.scopes

view details

push time in a month

issue openedapex/log

Add context methods

would be nice to get/set from context.Context, passing it along as an extra param is a bit annoying

created time in a month

issue commentapex/up

Logs missing contextual information

gotcha! Yeah it'd probably be fine to just pass everything else through as fields, sounds reasonable to me

stephenmathieson

comment created time in a month

issue commentapex/up

Logs missing contextual information

ahhh it's a bit tricky to find but here's the relevant docs: https://apex.sh/docs/up/guides/#mastering_logging.json_structured_logs — it would be possible to just accept arbitrary JSON, but for now it's a pretty deliberate "shape"

stephenmathieson

comment created time in a month

starteddlclark/regexp2

started time in a month

Pull request review commentapex/gateway

README: Fix example

 import ( 	"fmt" 	"log" 	"net/http"-	"os"  	"github.com/apex/gateway"-	"github.com/aws/aws-lambda-go" )  func main() { 	http.HandleFunc("/", hello)-	log.Fatal(gateway.ListenAndServe(":3000", nil))+	log.Fatal(gateway.ListenAndServe("n/a", nil))

ahh right, for some reason I thought I was defaulting to net/http outside of Lambda, that might be a nice thing to add

carlmjohnson

comment created time in a month

pull request commentapex/gateway

Set Request.RequestURI

thanks!

carlmjohnson

comment created time in a month

push eventapex/gateway

Carl Johnson

commit sha 58b2b228ef5f290d3524d4790d143781b8d77352

Set Request.RequestURI (#27) Fixes #26

view details

push time in a month

PR merged apex/gateway

Set Request.RequestURI

Fixes #26

+3 -0

0 comment

1 changed file

carlmjohnson

pr closed time in a month

issue closedapex/gateway

Set request.RequestURI

Request.URL is set, but not Request.RequestURI. This causes problems with certain logging middleware.

closed time in a month

carlmjohnson

Pull request review commentapex/gateway

README: Fix example

 import ( 	"fmt" 	"log" 	"net/http"-	"os"  	"github.com/apex/gateway"-	"github.com/aws/aws-lambda-go" )  func main() { 	http.HandleFunc("/", hello)-	log.Fatal(gateway.ListenAndServe(":3000", nil))+	log.Fatal(gateway.ListenAndServe("n/a", nil))

sounds reasonable, but now it won't run locally. Maybe we should just have a comment before the ListenAndServe or something

carlmjohnson

comment created time in a month

startedelm-in-elm/compiler

started time in a month

startedtfriedel6/canvas

started time in a month

issue commentmicrosoft/vscode

Multiselect via ctrl+d case insensitivity makes it useless

👍 super annoying, the default is never what I actually want

ds0nt

comment created time in a month

issue openedapex/up

Add white/black listing of CIDR ranges

For static and dynamic apps.

created time in a month

startedantchfx/xpath

started time in a month

issue openedapex/logs

go: compress request

gzip, maybe brotli if there's a nice Go implementation now

created time in a month

startedcuelang/cue

started time in a month

push eventapex/logs

TJ Holowaychuk

commit sha 57c35951bf9f1616cdb701a7cdb50ee3eba0ca67

docs: fix links

view details

push time in a month

push eventapex/logs

TJ Holowaychuk

commit sha f1bc461b3d1905939692e5ac8baafe862f224eee

docs: add new doc generation

view details

push time in a month

push eventapex/logs

TJ Holowaychuk

commit sha 3278c5cbc54b52d39976e79de541a5be740ebba4

go: add token methods

view details

TJ Holowaychuk

commit sha 80bcef2629487a3cf04ab6ccf39954014f875e87

js: add token methods

view details

push time in a month

push eventtj/go-termd

vilmibm

commit sha 12f47e06d80a9fc93e8ab0afec160fb327e33806

fix blackfriday dep

view details

TJ Holowaychuk

commit sha 7f6aeb16638085719d9c0a6c14231f41932445fc

Merge pull request #4 from vilmibm/blackfriday fix blackfriday dep

view details

push time in a month

PR merged tj/go-termd

fix blackfriday dep

blackfriday published a broken version that is getting pinned in go-termd; this PR updates the dependency to the current working version.

+4 -4

1 comment

3 changed files

vilmibm

pr closed time in a month

pull request commenttj/go-termd

fix blackfriday dep

thanks!

vilmibm

comment created time in a month

pull request commentapex/apex

Feature/add function concurrency

@sean256 it'll have to be forked for now, this project doesn't have any funding so I can't really maintain it for now

ocowchun

comment created time in a month

pull request commenttj/commander.js

Add FUNDING file prior to enabling GitHub Sponsor on repo

done!

shadowspawn

comment created time in a month

startedLuxLang/lux

started time in 2 months

startedgoogle/schism

started time in 2 months

created tagtj/triage

tagv0.1.0

Interactive command-line GitHub issue & notification triaging tool.

created time in 2 months

push eventtj/triage

TJ Holowaychuk

commit sha 6e8643a5029fe1eb2622be7ed7bf881be62fdeb1

Release v0.1.0

view details

push time in 2 months

startedrevery-ui/revery

started time in 2 months

issue commenttj/staticgen

Stops on 404 405

I forgot to document this option: https://github.com/tj/staticgen/blob/master/config.go#L28 that should do the trick, at least for 404

yene

comment created time in 2 months

more