GithubHelp home page GithubHelp logo

kirk-baird / specs-actors Goto Github PK

View Code? Open in Web Editor NEW

This project forked from filecoin-project/specs-actors

1.0 0.0 0.0 13.43 MB

Specification of builtin actors, in the form of executable code.

License: Other

Go 99.82% Makefile 0.06% Python 0.12%

specs-actors's Introduction

Filecoin actors

CircleCI codecov go.dev reference

This repo is the specification of the Filecoin builtin actors, in the form of executable code.

This is a companion to the rest of the Filecoin Specification, but also directly usable by Go implementations of Filecoin.

Versioning

Releases of this repo follow semantic versioning rules, with consideration of distributed state machines.

  • The major version will remain 0 or 1 for the forseeable future. We do not bump the major version every time there's a backwards-incompatible change in state machine evaluation, or actor interfaces, because this interacts very poorly with Go's module resolution, requiring a change of all import paths. After 1.0 we may consider using the major version number to version the Runtime interface, which is the link between the actors and the system in which they are embedded.
  • A minor version change indicates a backwards-incompatible change in the state machine evaluation, including actor exported methods or constant values, while retaining compatibility of the Runtime interface. This means that the same sequence of messages might produce different states at two different versions. In a blockchain, this would usually require a coordinated network upgrade or "hard fork". After 1.0, a minor version change may alter behaviour but not exported code or actor interfaces.
  • A patch version change may alter state evaluation (but not exported code or actor interfaces). After 1.0, a patch version change indicates a backward compatible fix or improvement that doesn't change state evaluation semantics or exported interfaces.

License

This repository is dual-licensed under Apache 2.0 and MIT terms.

Copyright 2019-2020. Protocol Labs, Inc.

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.