Deno August Update: more flexible security in 1.36, persistent logs in Deno Deploy, and more


Hot runtime summer is in full swing and with that comes ton of updates! Read on to learn about more granular security controls in Deno 1.36, searchable and filterable logs on Deno Deploy, simplified route components in Fresh 1.3, and more.

Deno 1.36: More flexible security and expanded testing APIs

Deno’s opt-in permission model gives you control over what your (or third-party) code has access to. Until now, you could either grant unfettered access to a feature or configure specific domains or directories with --allow-* .

In Deno 1.36, we introduce the --deny-* family of runtime flags to enable more flexible permissions for your Deno programs.

$ deno run --allow-net --deny-net=api.evil.com mod.ts

Read the full announcement →

Deno Deploy: filterable, searchable, persistent logs

Debugging is easier on Deno Deploy, now that you can filter and search through your logs within the past 24 hours based on time, level, and region:

image.png

Read the full announcement →

Fresh 1.3: simplified route components and more

We’re doing monthly Fresh minor releases! This cycle saw improved documentation, bug fixes, and new features, many thanks to the community.

The big update here is Async Route Components, which removes boilerplate for building simple components.

Before:

interface Data {
  foo: number;
}

export const handler: Handlers<Data> = {
  async GET(req, ctx) {
    const value = await loadFooValue();
    ctx.render({ foo: value });
  },
};

export default function MyPage(props: PageProps<Data>) {
  return <p>foo is: {props.data.foo}</p>;
}

After:

// After
export default async function MyPage(req: Request, ctx: RouteContext) {
  const value = await loadFooValue();
  return <p>foo is: {value}</p>;
}

Read the full announcement or watch the video

For the Community

Upcoming Office Hours and Live Coding

These events are a great way to meet the team behind Deno, get your questions answered, and learn about web development.

Upcoming Conferences and Meetups

Community #Showcase

You all have been active building with and writing about Deno! Here’s a (very incomplete) list of projects and articles.

TUI is a framework for building terminal user interfaces. It just hit 2.1 with layouts, performance optimizations, and more.
kvdex is a type-safe, simple Deno KV wrapper with zero third-party dependencies.
This blog post peeks under the Deno hood and is useful if you're interested in building your own JS runtime.
Are you writing an FFI-dependent module? Here’s an in-depth walkthrough on how to publish it to deno.land/x.

For more projects and resources (or if you’d like to share yours), join the Discord’s #showcase channel.

Other Deno updates

Aside from the big updates above, we’ve shipped a bunch of other resources. Check them out below:


Get the latest Deno articles, projects, and other resources.