Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
737 lines (505 sloc) 58.4 KB

Changelog

v0.18.3

Added

  • (#1630) Start cosmos lcd server with the engine.
  • (#1632) Add monitoring to dev engine.

Changed

  • (#1554) Cosmos implementation simplification.
  • (#1617) Use cosmos event manager like standard cosmos modules are doing.
  • (#1636) Reorganise monitoring configs and add default dashboards.
  • (#1641) Update metrics.

Fixed

  • (#1599) Move AccNumber and AccIndex to the config.
  • (#1625) Remove useless volume definition in the tool dockerfile.
  • (#1626) Emit only one event with multiple attributes in cosmos module handler.
  • (#1627) Simplify txbuilder and improve keybase signing.

Dependencies

  • (#1576) Bump gopkg.in/go-playground/validator.v9 from 9.30.2 to 9.31.0.
  • (#1610) Bump github.com/spf13/viper from 1.6.1 to 1.6.2.
  • (#1614) Bump gopkg.in/yaml.v2 from 2.2.7 to 2.2.8.
  • (#1616) Bump github.com/prometheus/client_golang from 1.1.0 to 1.4.0.
  • (#1618) Update to cosmos v0.37.6 and tendermint v0.32.9.
  • (#1619) Bump google.golang.org/grpc from 1.25.1 to 1.27.0.
  • (#1623) Bump github.com/golang/protobuf from 1.3.2 to 1.3.3.
  • (#1628) Bump github.com/grpc-ecosystem/go-grpc-middleware from 1.1.0 to 1.2.0.

v0.18.2

Fixed

  • (#1605) Override default staking module config.

v0.18.1

Added

  • (#1580) Add execution metrics.
  • (#1595) Add cosmos cli for low-level utility functionality.

Changed

  • (#1572) Customize cosmos address prefix.
  • (#1601) Change default block time to 5sec and some token config.
  • (#1602) Change the mesg coin type to the registered one (470).

Fixed

  • (#1588) Fix supply module init.
  • (#1598) Fix account number used for signing tx.
  • (#1553) Add fees and estimation of tx's gas.

Removed

  • (#1579) Remove useless database config.

v0.18.0

Breaking Changes

  • (#1536) Update process structure: rename process's key to name and move node.*.key into node.
  • (#1540) Implement nested data map in process and change process map structure.
  • (#1545) Add path system to reference nested data in process.

Added

  • (#1527) Decentralization of the processes.
  • (#1519) Add data validation to all resources.
  • (#1567) Add validation on process node to check reference to non-task node.
  • (#1501) Add e2e tests on process and orchestrator. (#1544). (#1546). (#1547). (#1575).

Changed

  • (#1490) More verbose error in service backend.

Fixed

  • (#1532) Fix blocked logs by forcing to a maximum 10,000 lines in dev script.
  • (#1543) Fix concurrent transaction signing by adding a mutex to the keybase.
  • (#1556) Fix account sequence when signing multiple transactions.

Removed

  • (#1555) Remove account sdk and credential system.

v0.17.0

Breaking Changes

  • (#1456) Update Instance SDK and create Runner SDK.
  • (#1459) Single cosmos account.
  • (#1463) Execution SDK on Cosmos.
  • (#1473) Use filter in list instance api.
  • (#1499) Improve use of proto Value and remove one of on UpdateExecutionRequest.
  • (#1513) Remove service env MESG_TOKEN.
  • (#1514) Remove service env MESG_TOKEN.

Added

  • (#1435) Prepare setup for running e2e tests.
  • (#1439) Setup up account test in E2E.
  • (#1448) Inject env MESG_INSTANCE_HASH in services.
  • (#1449) Add config log format validation.
  • (#1450) Add more explicit error on service create.
  • (#1451) Validate service nested object params.
  • (#1489) Add account mnemonic in config.
  • (#1500) Add e2e tests of a complex service.
  • (#1502) Add amino encoding functionality to proto Struct.
  • (#1503) Add small test to make sure hashstruct is sorting the map and struct keys.
  • (#1512) Inject runner hash in docker services.

Changed

  • (#1432) Bump gopkg.in/yaml.v2 from 2.2.2 to 2.2.4.
  • (#1437) Remove dep from lint and add dep in docker-dev in makefile.
  • (#1452) Add EnvHash to instance and calculate the hash based on it.
  • (#1461) Refactor instance sdk containers function.
  • (#1474) Update golangci-lint to 1.21.0.
  • (#1485) Increase gas limit tx.
  • (#1488) Refactor database.
  • (#1491) Filter instances on backend side.

Fixed

  • (#1462) Use sequence number from cosmos auth module.
  • (#1479) Return proper error code on e2e fail.
  • (#1480) Use a single cosmos codec.
  • (#1481) export MESG_PATH for e2e tests.
  • (#1483) Disable go test cache for e2e test.
  • (#1486) Fix 2 error messages.
  • (#1504) Fix hash length.
  • (#1510) Return not found error in backend get functions when resource doesn't exist.
  • (#1511) Fix bug when Value_NullValue is not taking into account.
  • (#1521) Fix filter in runner sdk and check if runner exists.
  • (#1522) Fix typos.

Removed

  • (#1468) Remove public error AlreadyExistsError from SDKs.
  • (#1469) Remove servicesdk interface.
  • (#1482) Remove runner db to use directly cosmos kvstore in runner sdk.
  • (#1508) Remove deprecated database files.
  • (#1516) Remove database/store package.

v0.16.0

Breaking Changes

  • (#1361) Remove system services and deprecated service sdk.
  • (#1364) Remove core api.
  • (#1375) Simplify service hash calculation.
  • (#1381) Remove service deletion function.
  • (#1416) Read config from file instead of env.

Added

  • (#1355) Add credential using grpc metadata.
  • (#1368) Add ownership SDK and API.
  • (#1380) Add configuration validation.
  • (#1384) Add service exists api.

Changed

  • (#1357) Update dependencies.
  • (#1371) Remove shared private info of the genesis account to generate the genesis.
  • (#1391) Improve generate genesis script.
  • (#1400) Container package refactor.
  • (#1402) Run scripts from Makefile.
  • (#1412) Load genesis from file and generate it if it doesn't exist.
  • (#1430) Set block creation time to 1s instead of 10s.
  • (#1431) Update dependencies.

Fixed

  • (#1360) Fix copy of folder in dev script.

Removed

  • (#1370) Remove system service sources.
  • (#1373) Remove not used service-test.
  • (#1414) Remove not used functions from xos package.
  • (#1428) Remove deprecated MESG_ENDPOINT_TCP from service env.

v0.15.0

Breaking Changes

  • (#1329) Calculate process hash based on the nodes.
  • (#1335) Remove plural form from instance list proto service.
  • (#1337) Namespace protobuf types and api.

Experimental

  • (#1267) Implement service SDK with Cosmos.
  • (#1308) Simplify cosmos keybase by just creating a NewMnemonic helper.
  • (#1331) Add --exp to dev command.
  • (#1343) Add account sdk and its api.

Added

  • (#1316) Add constant to process map.
  • (#1317) Add tests for orchestrator.
  • (#1342) Build and publish docker image with minor-only tag.

Changed

  • (#1305) Use protobuf struct in create function of service SDK.
  • (#1321) Only force hash calculation on interface containing struct.
  • (#1322) Update golang to 1.13.
  • (#1323) Remove unused docker api mocks.
  • (#1347) Update marketplace system service with latest mesg-js.

v0.14.2

Fixed

  • (#1339) Fix hash.Unmarshal when using proto.Unmarshal.

v0.14.1

Fixed

  • (#1318) Fix hash calculation based on proto.Struct.
  • (#1320) Use proto.Struct in the orchestrator. (#1327).

Changed

  • (#1309) Do not convert proto.Struct to map in order to Validate it.

Removed

v0.14.0

Breaking Changes

  • (#1258) Pure graph implementation for the orchestration system.
  • (#1278) Rename workflow to process.
  • (#1290) Use gogo protobuf.
  • (#1292) Set nullabe to false for service configuration.
  • (#1301) Update database path to ensure no issue on startup.

Added

  • (#1241) Process input resolution.

Changed

  • (#1254) Remove database ErrNotFound. Introduce Database Exist function.
  • (#1260) Keep only one Service struct (the one generated from protobuf definition).
  • (#1264) Refactor/remove custom service type no custom type hash.
  • (#1269) Change service.proto package back to types.
  • (#1270) Change proto hash type from string to bytes.
  • (#1285) Bump github.com/gogo/protobuf from 1.2.1 to 1.3.0.
  • (#1286) Fix marshal issue with process filter.
  • (#1287) Update system services to work with latest gRPC API.
  • (#1288) Fix that hash of info API were still in string instead of bytes.
  • (#1291) Customize protobuf messages .
  • (#1293) Replace instance struct with protobuf.
  • (#1295) Remove old generated instance struct.
  • (#1296) Remove and refactor rest protobuf types.
  • (#1298) Replace cnf structhash with custom one.
  • (#1310) Update gogo protobuf with fixed json and custom tags generation.
  • (#1311) Use protobuf marshal/unmarshal in process database.
  • (#1312) Use protobuf marshal/unmarshal in execution database.

Experimental

  • (#1243) Add store package.
  • (#1244) Update service db to use store.
  • (#1245) Bump github.com/cosmos/cosmos-sdk from 0.36.0 to 0.37.0.
  • (#1248) Add Cosmos helpers.
  • (#1249) SDK loads the App modules.
  • (#1250) Transform service sdk to accept cosmos service step 1.
  • (#1252) Add service sdk cosmos version step 2.
  • (#1255) Create tendermint client.
  • (#1257) Recover from panic in cosmos store.
  • (#1268) Make cosmos store iterator works the same way as goleveldb iterator.
  • (#1271) Bump github.com/tendermint/tendermint from 0.32.2 to 0.32.3.
  • (#1284) Add test for both cosmos store and leveldb store.
  • (#1297) Add explicit marshal and unmarshal function to service db.
  • (#1299) Create a cosmos app factory struct.
  • (#1300) Prepare cosmos client.

v0.13.0

Added

  • (#1201) Multi step workflow.
  • (#1213) Add module name to logs.
  • (#1223) Workflow validation.

Changed

  • (#1204) Move workflow to its own database/api.
  • (#1208) Rename engine package to scheduler.
  • (#1209) Workflow graph structure.
  • (#1214) Create struct service.Configuration.
  • (#1229) Remove trigger type for workflows.
  • (#1231) Use required_without validation instead of manual one.

Fixed

  • (#1207) Clean dev script.
  • (#1210) Improve regex used in dev script.
  • (#1215) Remove unused variable and improve error handling of config.setupServices function.
  • (#1217) Fix dev script.
  • (#1220) Remove regexp network filter from dev script.

Removed

  • (#1230) Remove git related package.

Experimental

  • (#1211) Cosmos integration.
  • (#1218) Set tm config in config package and pass it on node creation.
  • (#1219) Add cosmos modules.
  • (#1226) update Cosmos to v0.36.
  • (#1227) Possibility to enable/disable network when running the engine.

v0.12.1

Fixed

  • (#1199) Fix issue with the marketplace#getService task.

v0.12.0

Breaking Changes

  • (#1173) mesg.hash has been removed and replaced by mesg.service and mesg.instance in the docker labels.
  • (#1192) Replace JSON format with protobuf Struct on gRPC APIs for inputs, outputs and data parameters. (#1198).

Features

  • (#1191) Put executions as failed when a service emits the wrong outputs.

Experimental

v0.11.0

Click here to see the release notes

Breaking Changes

  • (#1083) Remove old gRPC APIs.
  • (#1170) Change Service and Execution database version. You'll need to redeploy your services.

Added

Changed

  • (#1082) Server and SDK package cleanup. (#1085). (#1096).
  • (#1087) Update system service deployment system. (#1156). (#1160).
  • (#1094) Introduction of a Hash type to manage all encoding and decoding of hashes. (#1072). (#1098).
  • (#1045) Update system service Marketplace to use new gRPC APIs. (#1166).
  • (#1148) Update system service EthWallet to use new gRPC APIs. (#1167).
  • (#1151) Namespace simplification in package Container.

v0.10.1

Click here to see the release notes

Fixed

  • (#1050) Fix service Marketplace backward compatibility.

v0.10.0

Click here to see the release notes

Breaking Changes

Added

  • (#1014) Introduce new deployment api. Only available for development purpose.

Changed

  • (#994) Update execution database and api. (#1006). (#1007). (#1041).
  • (#997) Rename package api to sdk.
  • (#998) Rename package interface to server.

Fixed

  • (#955) Catch error when the volume is deleted and it did not exist.

Removed

  • #1001 Remove web3 http request logs from Marketplace.

v0.9.1

Click here to see the release notes

Added

  • (#993) Display web3 http request logs in Marketplace.

Changed

  • (#949) Use MESG's IPFS node in CLI.

Fixed

  • (#930) Improve generated README when using command service gen-doc. (#948). (#960).
  • (#934) Return error when an image is passed on a mesg.yml definition.
  • (#929) Show more verbose error when deploying service.

Documentation

  • (#953) Fix links to docs

v0.9.0

Click here to see the release notes

Breaking Changes

  • (#731) Deterministic service hash. (#804). (#877).
  • (#801) Add Service's hash to reply of Deploy API
  • (#849) Use base58 to encode service hash.
  • (#860) Separate service's configuration from service's dependencies. (#880).
  • (#866) Rename service's volumesfrom property.
  • (#905) Add version to database path to prevent decoding error and loss of data.

Added

Changed

Fixed

  • (#771) Fix gRPC stream acknowledgement.
  • (#772) Improve command logs errors.
  • (#820) Fix container package.

v0.8.1

Click here to see the release notes

Fixed

  • (#774) Update keep alive of client to 5min to prevent spamming the server.

Documentation

  • (#762) Fix and improve guide start. (#763).

v0.8.0

Click here to see the release notes

Added

  • (#690) Support service deployments from tarball urls.
  • (#732) Support multiple service id or hash for commands service start and service stop.
  • (#726) Add flag to command start to force colors in logs of Core.

Changed

  • (#734) Returns service sid in commands instead of hash.
  • (#724) Changed system services deployment system. (#727). (#725). (#743).

Fixed

  • (#738) Fix stream disconnection because of more than 15min of inactivity. (#739). (#742). (#744).

Documentation

v0.7.0

Click here to see the release notes

Added

  • (#677) Stream acknowledgement system. The core notifies client when streams are ready.
  • (#679) Add support of repeated parameters to service definition. (#680). (#684).
  • (#682) Add support of type Any to service definition. (#689).
  • (#691) Add database transaction mechanism to database execution.
  • (#696) Add support of nested type definition for type Object.
  • (#704 Move go-service to package client/service.

Changed

  • (#688) Change sid auto-generated prefix.
  • (#699) Updated to golang v1.11.4.

Fixed

  • (#687) Fix execution generated id.
  • (#703) Return error when core is not running in command dev and deploy.

Removed

  • (#675) Remove workflow grpc client.
  • (#693) Remove vendor folder.

v0.6.0

Click here to see the release notes

Added

  • (#641) Services definition accept env variables. Users can override them on deploy. #660. #666.
  • (#651) Error added in task execution result.

Changed

  • (#611) Switch to go1.11.
  • (#648) Print all service definition in command service detail.
  • (#649) Lowercase sid.

Documentation

  • (#638) Fix marketplace link
  • (#643) Add instruction to start the core without CLI
  • (#656) Show instruction to create manually system services folder
  • (#665) Add favicon

v0.5.0

Click here to see the release notes

Breaking Changes

  • (#608) Rename "command" property and add "args" property in service definition.

Added

  • (#583) Add property Sid (Service ID) in service definition file. Allow a service to reuse the same volumes after stopping. #627. #613. #619.

Changed

  • (#580) Refactor package Daemon.
  • (#588) Refactor tests of package container.
  • (#604) Improve hash function.
  • (#609) Delete all service in parallel in commands.
  • (#615) Remove initialization of swarm but display useful error.
  • (#617) Improve template of command service gen doc.
  • (#630) Rename service id to hash.

Fixed

  • (#585) Handle gracefully task executions without inputs.
  • (#598) Start service dependencies one by one. Solve issue when dependencies request access to same resource.

Documentation

  • (#568) Update what-is-mesg.md.
  • (#569) Update README.md.
  • (#620) Add docker swarm init steps to doc.

v0.4.0

Click here to see the release notes

Added

  • (#534) Access service dependencies based on the name of the dependency through the network.
  • (#555) Add more logs on the CLI.

Changed

  • (#560) Store executions in a database - Fix memory leak #542

Fixed

  • (#553) UI issue with service execute command.
  • (#552) Service dev command returns with an error when needed.
  • (#526) Improve container deletion when a service is stopped.
  • (#524) Fix sync issue on status send chans and sync issue on gRPC deploy stream sends.

v0.3.0

Click here to see the release notes

Added

  • (#392) BREAKING CHANGE. Add support for .dockerignore. Remove support of .mesgignore #498.
  • (#383) New API package. #386. #444. #486. #488.
  • (#409) Add required validations on service's task, event and output data.
  • (#432) Configuration of the CLI's output with --no-color and --no-spinner flags. Colorize JSON. #453. #480. #484.
  • (#435) Command service logs accepts multiple dependency filters with multiple use of -d flag.
  • (#478) Allow multiple core to run on the same computer.
  • (#493) Support numbers in service task's key, event's key and output's key
  • (#499) Return service's status from API

Changed

Fixed

  • (#401) Gracefully stop gRPC servers.
  • (#429) Fix issue when stopping services. #505. #526.
  • (#476) Improve database error handling.
  • (#482) Fix Service hash changed when fetching from git.

Removed

  • (#410) Remove socket server in favor of the TCP server.

Documentation

  • (#415) Added hall-of-fame to README. Thanks sergey48k.
  • (#423) Fix documentation issue.
  • (#474) Documentation/update ux.
  • (#509) Add forum link. #513.
  • (#510) Update ecosystem menu.
  • (#511) Update tutorial page.
  • (#512) Add sitemap.

v0.2.0

Added

  • (#242) Add more details in command mesg-core service validate
  • (#295) Added more validation on the API for the data of executeTask, submitResult and emitEvent. Now if data doesn't match the service file, the API returns an error
  • (#302) Possibility to use a config file in ~/.mesg/config.yml
  • (#303) Add command service dev that build and run the service with the logs
  • (#303) Add command service execute that execute a task on a service
  • (#316) Delete service when stoping the service dev command to avoid to keep all the versions of the services.
  • (#317) Add errors when trying to execute a service that is not running (nothing was happening before)
  • (#344) Add service execute --data flag to pass arguments as key=value.
  • (#362) Add tags list parameter for execution in order to be able to categorize and/or track a specific task execution.
  • (#362) Add possibility to listen to results with the specific tag(s)

Changed

Fixed

  • (#358) Fix goroutine leaks on api package handlers where gRPC streams are used. Handlers now doesn't block forever by exiting on context cancellation and stream.Send() errors.

Removed

  • (#303) Deprecate command service test in favor of service dev and service execute

v0.1.0

Added

  • (#267) Add Command service gen-doc that generate a README.md in the service based on the informations of the mesg.yml
  • (#246) Add .mesgignore to excluding file from the Docker build

Changed

Fixed

  • (#246) Ignore files during Docker build

v0.1.0-beta3

Added

  • (#246) Add .mesgignore to excluding file from the Docker build

Changed

Fixed

  • (#246) Ignore files during Docker build

v0.1.0-beta2

Added

  • (#174) Add CHANGELOG.md file
  • (#179) Add filters for the core API
    • [API] Add eventFilter on ListenEvent API to get notification when an event with a specific name occurs
    • [API] Add taskFilter on ListenResult API to get notification when a result from a specific task occurs
    • [API] Add outputFilter on ListenResult API to get notification when a result returns a specific output
  • (#183) Add a configuration attribute in the mesg.yml file to accept docker configuration for your service
  • (#187) Stop all services when the MESG Core stops
  • (#190) Possibility to test or deploy a service from a git or GitHub url
  • (#233) Add logs in the service test command with service logs by default and all dependencies logs with the --full-logs flag
  • (#235) Add ListServices and GetService APIs

Changed

  • (#174) Update CI to build version based on tags
  • (#173) Use official Docker client
  • (#175) Changed the struct to use to start docker service
  • (#181) MESG Core and Service start and stop functions wait for the docker container to actually run or stop.
  • (#183) BREAKING Docker image is automatically injected in the mesg.yml file for your service. Now dependencies attribute is for extra dependencies so for most of service this is not necessary anymore.
  • (#212) BREAKING Communication from services to core is now done through a token provided by the core
  • (#236) CLI only use the API
  • (#234) service list command now includes the status for every services

Fixed

  • (#179) [Doc] Outdated documentation for the CLI
  • (#185) Fix logs with extra characters when mesg-core logs

Removed

  • (#234) Remove command service status in favor of service list command that includes status
You can’t perform that action at this time.