-
A large increase in both the quality and the quantity of documentation
-
Numerous bug fixes to the compiler
-
anyandallfunctions added to joxa-lists -
joxa-otp/behaviour!now correctly checks for a behaviour
| %%% Myrmas Path Compression | |
| %%% ======================= | |
| %%% * author: Eric Merritt | |
| %%% * copyright: Afiniate, Inc | |
| %%% | |
| %%% License | |
| %%% ------- | |
| %%% Licensed under the Apache License, Version 2.0 you may not use | |
| %%% this file except in compliance with the License. You may obtain a | |
| %%% copy of the License at http://www.apache.org/licenses/LICENSE-2.0 |
| =ERROR REPORT==== 6-Jul-2012::06:45:16 === | |
| webmachine error: path="/bukkit/vfjfiuxowgsnxsxlarjsohlpxnmpuk/ijawbolybgnqwdhrvmyzujxihivvky" | |
| [{erlang,iolist_to_binary, | |
| [{wm_reqdata,'GET',http, | |
| {1,1}, | |
| "127.0.0.1", | |
| {wm_reqstate,#Port<0.5177>, | |
| {dict,3,16,16,8,80,48, | |
| {[],[],[],[],[],[],[],[],[],[],[],[],[],[],[],[]}, | |
| {{[],[],[],[],[], |
| # -*- mode: Makefile; fill-column: 80; comment-column: 75; -*- | |
| ERL = $(shell which erl) | |
| ERLFLAGS= -pa $(CURDIR)/.eunit -pa $(CURDIR)/ebin -pa $(CURDIR)/*/ebin | |
| REBAR=$(shell which rebar) | |
| ifeq ($(REBAR),) | |
| $(error "Rebar not available on this system") |
| # Copyright 2012 Erlware, LLC. All Rights Reserved. | |
| # | |
| # This file is provided to you under the Apache License, | |
| # Version 2.0 (the "License"); you may not use this file | |
| # except in compliance with the License. You may obtain | |
| # a copy of the License at | |
| # | |
| # http://www.apache.org/licenses/LICENSE-2.0 | |
| # | |
| # Unless required by applicable law or agreed to in writing, |
| #!/bin/bash | |
| # | |
| # If run inside a git repository will return a valid semver based on | |
| # the semver formatted tags. For example if the current HEAD is tagged | |
| # at 0.0.1, then the version echoed will simply be 0.0.1. However, if | |
| # the tag is say, 3 patches behind, the tag will be in the form | |
| # `0.0.1+build.3.0ace960`. This is basically, the current tag a | |
| # monotonically increasing commit (the number of commits since the | |
| # tag, and then a git short ref to identify the commit. | |
| # |
| > vagrant provision ci develop [352d436] deleted modified added | |
| [ci] Running provisioner: Vagrant::Provisioners::Ansible... | |
| ansible-playbook | |
| --user=vagrant | |
| --inventory-file=/var/folders/42/prytfnvd1vn25rzm7vsmzt6m0000gp/T/inventory20130131-77516-17jcsps-0 | |
| --private-key=/Users/emerrit/.vagrant.d/insecure_private_key | |
| roles/ci.yml | |
| ERROR: 'action' or 'local_action' attribute missing in task "<Unnamed>" |
| clean: $(REBAR) | |
| $(REBAR) skip_deps=true clean | |
| - rm -rf $(CURDIR)/doc/*.html | |
| - rm -rf $(CURDIR)/doc/*.css | |
| - rm -rf $(CURDIR)/doc/*.png | |
| clean-deps: clean | |
| rm -rvf $(CURDIR)/deps/* | |
| rm -rf $(ERLWARE_COMMONS_PLT).$(ERL_VER) |
Current state of the art in distributed systems revolves around service oriented architectures that can be scaled based on demand. This requires being able to add services on the fly as demand increases and recognizing capacity decrease when services fail. Myrmas is a solution to this problem. Myrmas is a robust general Service Availability and Health Registry designed to be used as a basis for large scale distributed systems. It is designed to scale simply from two nodes to hundreds of thousands of nodes while making as few assumptions around network topology and connectivity as possible. Myrmas is built around a robust membership protocol called DIMPLE-II paired with an epidemic data propagation protocol called Newscast. Together, these allow Myrmas to provide the solid foundation on which to build large scale heterogenious distributed systems.
One of the key features of Myrmas is that is designed from the ground up to support mixed language systems. It does this through two main avenues.
- The simple