std@0.152.0
archive | |
async | Provide help with asynchronous tasks like delays, debouncing, deferring, or pooling. |
bytes | Provides helper functions to manipulate |
collections | Functions for specific common tasks around collection types like |
crypto | Extensions to the Web Crypto supporting additional encryption APIs. |
datetime | Utilities for dealing with {@link |
dotenv | Load environment variables from |
encoding | |
examples | |
flags | Command line arguments parser based on minimist. |
fmt | |
fs | Helpers for working with the filesystem. |
hash | Deprecated. Use
Web Crypto
or |
http | Provides user-friendly {@link |
io | Utilities for working with Deno's readers, writers, and web streams. |
log | Logging library with the support for terminal and file outputs. Also provides interfaces for building custom loggers. |
media_types | Utility functions for media types (MIME types). |
node | |
path | Utilities for working with OS-specific file paths. |
permissions | Helpers for interacting with Deno's permissions system. |
semver | The semantic version parser. |
signal | Higher level API for dealing with OS signals. |
streams | Utilities for working with the Streams API. |
testing | |
textproto | A reader for dealing with low level text based protocols. |
uuid | Generators and validators for UUIDs for versions v1, v4 and v5. |
wasi | |
version.ts |
These modules do not have external dependencies and they are reviewed by the Deno core team. The intention is to have a standard set of high quality code that all Deno projects can use fearlessly.
Contributions are welcome!
Standard library is currently tagged independently of Deno version. This will change once the library is stabilized.
To check compatibility of different version of standard library with Deno CLI see this list.
These modules will eventually be tagged in accordance with Deno releases but as of today we do not yet consider them stable and so we version the standard modules differently from the Deno runtime to reflect this.
It is strongly recommended that you link to tagged releases to avoid unintended updates and breaking changes.
Don't link to / import any module whose path:
_foo.ts
, _util/bar.ts
.test.ts
, foo_test.ts
,
testdata/bar.txt
.Don't import any symbol with an underscore prefix: export function _baz() {}
.
These elements are not considered part of the public API, thus no stability is guaranteed for them.
To browse documentation for modules:
NOTE: This repository was unarchived and synced on Feb, 1st, 2021. If you already had it cloned, we suggest to do a fresh clone to avoid git conflicts.
deno_std is a loose port of Go's standard library. When in doubt, simply port Go's source code, documentation, and tests. There are many times when the nature of JavaScript, TypeScript, or Deno itself justifies diverging from Go, but if possible we want to leverage the energy that went into building Go. We generally welcome direct ports of Go's code.
Please ensure the copyright headers cite the code's origin.
Follow the style guide.
After cloning don't forget to git submodule update --init
.
Before opening a PR make sure to:
deno task test
passes.deno fmt --check
passes.deno lint
passes.Give the PR a descriptive title.
Examples of good titles:
Examples of bad titles:
Ensure there is a related issue and it is referenced in the PR text.
For contributions to the Node compatibility library please check the
std/node
contributing guide
About CI checks:
We currently have 9 checks on CI. Each PR should pass all of these checks to be accepted.
Typechecking code in Markdown files:
If you want to run deno test --doc x.md
you will need to specify the flag
--import-map=test_import_map.json
, this import map is in the root of deno_std.
For maintainers:
To release a new version a tag in the form of x.y.z
should be added.