Git Product home page Git Product logo

browserify-util's Introduction

browserify-util

A fork of util which is much more friendly with non Node environment like browser.

It will rebase and try to release in order to sync with the upstream every day, see .github/workflows/rebase-upstream.yml for details.

And also you can take browserify#62 to understand why this forked project exists.

Installation

$ npm install -D util@npm:browserify-util@latest

You may also need to use overrides for npm, or resolutions for pnpm or yarn.


util Build Status

Node.js's util module for all engines.

This implements the Node.js util module for environments that do not have it, like browsers.

Install

You usually do not have to install util yourself. If your code runs in Node.js, util is built in. If your code runs in the browser, bundlers like browserify or webpack (up to version 4 -- see this documentation for how to include polyfills like util in webpack 5+) also include the util module.

But if none of those apply, with npm do:

npm install util

Usage

var util = require('util')
var EventEmitter = require('events')

function MyClass() { EventEmitter.call(this) }
util.inherits(MyClass, EventEmitter)

Browser Support

The util module uses ES5 features. If you need to support very old browsers like IE8, use a shim like es5-shim. You need both the shim and the sham versions of es5-shim.

To use util.promisify and util.callbackify, Promises must already be available. If you need to support browsers like IE11 that do not support Promises, use a shim. es6-promise is a popular one but there are many others available on npm.

API

See the Node.js util docs. util currently supports the Node 8 LTS API. However, some of the methods are outdated. The inspect and format methods included in this module are a lot more simple and barebones than the ones in Node.js.

Contributing

PRs are very welcome! The main way to contribute to util is by porting features, bugfixes and tests from Node.js. Ideally, code contributions to this module are copy-pasted from Node.js and transpiled to ES5, rather than reimplemented from scratch. Matching the Node.js code as closely as possible makes maintenance simpler when new changes land in Node.js. This module intends to provide exactly the same API as Node.js, so features that are not available in the core util module will not be accepted. Feature requests should instead be directed at nodejs/node and will be added to this module once they are implemented in Node.js.

If there is a difference in behaviour between Node.js's util module and this module, please open an issue!

License

MIT

browserify-util's People

Contributors

lukechilds avatar goto-bus-stop avatar defunctzombie avatar snyamathi avatar feross avatar bdjnk avatar matrixfrog avatar bernardmcmanus avatar trysound avatar jounqin avatar sukkaw avatar commanderroot avatar github-actions[bot] avatar

Stargazers

Mitchell avatar Zhazha_JiaYiZhen avatar Chuyang Zhou avatar 荧 avatar  avatar zzh avatar  avatar

Watchers

荧 avatar

Forkers

sukkaw

browserify-util's Issues

Remove/Replace all unsed polyfills

I am considering replacing util with browser-util inside Next.js. But before that could happen, we need to throw away all those 400 KiB of stupidness (i.e. those stupid polyfills).

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.