Giter Site home page Giter Site logo

summyd / adapter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from webrtchacks/adapter

0.0 1.0 0.0 4.79 MB

Shim to insulate apps from spec changes and prefix differences. Latest adapter.js release:

Home Page: https://webrtc.github.io/adapter/adapter-latest.js

License: BSD 3-Clause "New" or "Revised" License

JavaScript 99.92% HTML 0.08%

adapter's Introduction

Build Status

WebRTC adapter

adapter.js is a shim to insulate apps from spec changes and prefix differences. In fact, the standards and protocols used for WebRTC implementations are highly stable, and there are only a few prefixed names. For full interop information, see webrtc.org/web-apis/interop.

Install

NPM

npm install webrtc-adapter

Bower

bower install webrtc-adapter

Usage

NPM

Copy to desired location in your src tree or use a minify/vulcanize tool (node_modules is usually not published with the code). See webrtc/samples repo as an example on how you can do this.

Prebuilt releases

Web

In the gh-pages branch prebuilt ready to use files can be downloaded/linked directly. Latest version can be found at https://webrtc.github.io/adapter/adapter-latest.js. Specific versions can be found at https://webrtc.github.io/adapter/adapter-N.N.N.js, e.g. https://webrtc.github.io/adapter/adapter-1.0.2.js.

Bower

You will find adapter.js in bower_components/webrtc-adapter/.

NPM

In node_modules/webrtc-adapter/out/ folder you will find 4 files:

  • adapter.js - includes all the shims and is visible in the browser under the global adapter object (window.adapter).
  • adapter_no_edge.js - same as above but does not include the Microsoft Edge (ORTC) shim.
  • adapter_no_edge_no_global.js - same as above but is not exposed/visible in the browser (you cannot call/interact with the shims in the browser).
  • adapter_no_global.js - same as adapter.js but is not exposed/visible in the browser (you cannot call/interact with the shims in the browser).

Include the file that suits your need in your project.

Development

Detailed information on developing in the webrtc github repo can be found in the WebRTC GitHub repo developer's guide.

Head over to test/README.md and get started developing.

Publish a new version

  • Go the the adapter repository root directory
  • Make sure your repository is clean, i.e. no untracked files etc. Also check that you are on the master branch and have pulled the latest changes.
  • Depending on the impact of the release, either use patch, minor or major in place of <version>. Run npm version <version> -m 'bump to %s' and type in your password lots of times (setting up credential caching is probably a good idea).
  • Create and merge the PR if green in the GitHub web ui
  • Go to the releases tab in the GitHub web ui and edit the tag.
  • Add a summary of the recent commits in the tag summary and a link to the diff between the previous and current version in the description, example.
  • Go back to your checkout and run git pull
  • Run npm publish (you need access to the webrtc-adapter npmjs package)
  • Done! There should now be a new release published to NPM and the gh-pages branch.

Note: Currently only tested on Linux, not sure about Mac but will definitely not work on Windows.

Publish a hotfix patch versions

In some cases it may be necessary to do a patch version while there are significant changes changes on the master branch. To make a patch release,

  • checkout the latest git tag using git checkout tags/vMajor.minor.patch.
  • checkout a new branch, using a name such as patchrelease-major-minor-patch.
  • cherry-pick the fixes using git cherry-pick some-commit-hash.
  • run npm version patch. This will create a new patch version and publish it on github.
  • check out origin/bumpVersion branch and publish the new version using npm publish.
  • the branch can now safely be deleted. It is not necessary to merge it into the main branch since it only contains cherry-picked commits.

adapter's People

Contributors

agouaillard avatar aiham avatar alvestrand avatar andresusanopinto avatar byronclark avatar calebboyd avatar chuckhays avatar cvan avatar cwilso avatar doep avatar felixmcfelix avatar fippo avatar fischman avatar ggarber avatar jan-ivar avatar jiayliu avatar jnoring-hv avatar juandebravo avatar juberti avatar kaptenjansson avatar marwahvikas avatar minyuel avatar mirkobonadei avatar piranna avatar sachanacar avatar samdutton avatar sjdemartini avatar tkchin avatar yellowdoge avatar youennf avatar

Watchers

 avatar

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.