Skip to content

Releases: golemfactory/yapapi

0.7.0-alpha.1

05 Oct 08:30
Compare
Choose a tag to compare
0.7.0-alpha.1 Pre-release
Pre-release

Major features

  • Virtual Private Networks between the requestor and provider VMs (#613)
  • Support for custom usage counters (#594)

Documentation overhaul

  • New API reference - sphinx + readthedocs (#622)

Minor features

  • Enable parametrisation of Service instances within a single Golem.run_service() call (#514)
  • Enable non-context-manager usage of the Golem engine (#644)
  • Decouple Scripts from WorkContext for a cleaner separation of execution scripts and provider work contexts (#609)
  • Support for filtering provider offers by golem.inf.cpu.threads (#508)
  • State, usage and cost reporting support in WorkContext (#507)
  • Enable specification of full VM image URLs (#537)
  • Add VPN capability property to enable offer filtering (#658)
  • Add Network.remove and auto cleanup and Network as a context manager (#677)

New examples

  • SSH example (#658)
  • Minimal http proxy example (#656)
  • New blender_start_stop example showcasing the Golem.start/stop usage (#644)
  • Custom usage counter example (#611)

Bugfixes

  • Prevent new instances from starting when Cluster.stop() had been issued (#699)
  • Fix join_str_constraints (#524)
  • Fix the low-level-api example (#540)
  • Fix default subnet help (#557)
  • Fix the WorkerFinished event creation (#689)
  • Fix the http proxy example - handle 404 from the remotes (#691)
  • Ensure Golem shutdown is triggered even if startup hadn't gone well (#695)
  • Work-around for a race condition in the VPN node address broadcasting (#707)

Miscellaneous changes

  • Golem <-> Engine refactoring (#631)
  • Extract analogous parts of Executor and Cluster into the common engine (#496)
  • Reduce log output related to confirmed proposals (#505)
  • Usage reporting tweaks (#536)
  • Add state/usage/cost reporting in blender and simple service examples
  • Make engine params configurable via env variables (#546)
  • Update ya-aioclient from ^0.5 to ^0.6 (#503)
  • Use command_index when calling get_exec_batch_results (#548)
  • Add read-only properties for some Service/Cluster private fields (#550)
  • Provide default subnet tag in Engine (#556)
  • Service handler docstrings (#555)
  • Include job_id in computation events (#568)
  • Update typing_extensions to 3.10.0+ (#629)
  • Remove the standalone Executor (#635)
  • Sequence diagrams for batch execution (Task and Service API) (#580)
  • Remove implicit initialization from the WorkContext (#647)
  • Ensure handlers are async generators (#665)
  • Prefix driver and network with payment_ where appropriate (#653)
  • Simplify all examples by extracting the boilerplate to utils (#674)
  • Update the default development subnet to devnet-beta
  • Set password to the ssh service on the fly (#681)
  • Update examples to retrieve individual results instead of the accumulated ones (#682)
  • Unify the info printed in the ssh example with the others (#686)
  • Better recovery of the SSH example (#704)
  • More reliable instances startup for the http-proxy example (#706)

Tests / Continuous integration

  • Use dynamic stable branch in goth nightly (#480)
  • Add a goth test for proposal renegotiation (#551)
  • Remove reduntant log assertion from simple service test (#570)
  • Add team mention to goth nightly failure messages (#575) (#578)
  • Fix stable branch name regex in nightly workflow (#593)
  • Adapt integration tests to goth version 0.6.3 (#595)
  • Drone task: add stress-ng to drone task image (#596)
  • Bump black version to 21.7b0 (#610)
  • Add "Run workflow" button (#642)
  • Re-run test failures in goth tests (#643)
  • Fix the blender example on Python 3.6 (#667)
  • Goth power outage test (#668)
  • Remove redundant calls from power outage test (#687) (#688)

0.7.0-alpha.0

27 Sep 18:38
Compare
Choose a tag to compare
0.7.0-alpha.0 Pre-release
Pre-release
0.7.0-alpha.0

433 Eros

13 Aug 09:41
d6579ba
Compare
Choose a tag to compare

Changelog

Enhancements

  • Report activity termination by the provider (#587)
  • Retry some Activity API calls that fail due to recoverable GSB errors (#587)

Bugfixes

  • Reduce the number of files kept open by the gftp storage provider (requires yagna 0.7.3, with older versions this fix is d
    isabled) (#543)
  • Fix a warning message displayed when no offers are found within 20s to include correct upper bound for task / service expira
    tion (180 min instead of 30 min) (#582)
  • Update fallback URL for VM image repository (#565)
  • If a service instance stops in starting state due to a signal, don't spawn another instance instead (#547)

Integration test updates and fixes

  • Add team mention to goth nightly failure messages (#575)
  • Add docker daemon restart step to goth workflows (#553)

0.6.3-alpha.1

12 Aug 09:36
Compare
Choose a tag to compare
0.6.3-alpha.1 Pre-release
Pre-release
Add semantic-version to dependencies, bump version to 0.6.3-alpha.1

0.6.3-alpha.0

12 Aug 08:26
0804a5a
Compare
Choose a tag to compare
0.6.3-alpha.0 Pre-release
Pre-release
Bump version to 0.6.3-alpha.0 (#589)

Roswell

08 Jul 10:16
bf70b13
Compare
Choose a tag to compare

Changelog

Features

  • Respawn instances that failed in starting state (#509)
  • Support for filtering provider offers by "golem.inf.cpu.threads" (#508)

Bugfixes

  • Error handling in Services._run_instance() (#498)
  • Reduce the number of log entries related to confirmed proposals (#505)
  • Fix the constraints filter generation for an empty list of constraints (#524)
  • Throw errors raised in batch.prepare() into command generator (#530)
  • Handle aiohttp.ClientOSError in agreement-related Market API calls (#535)
  • Remove a stale import (#528)

Integration test updates and fixes

  • Add Discord notification for failed goth nightlies (#511) / (#527)
  • Set scope to "session" for the fixture that returns the log dir (#513)
  • Update goth to 0.5+ (#522)
  • Integration test for a Simple Service example (#516)

0.6.2-alpha.0

06 Jul 09:17
6ce1fb9
Compare
Choose a tag to compare
0.6.2-alpha.0 Pre-release
Pre-release
Bump version to 0.6.2-alpha.0 (#526)

Eastern 66

24 Jun 08:24
Compare
Choose a tag to compare

Fixes

  • Handle activity creation failures in spawn_instance (#458)
  • Repeat Payment API calls on timeout errors (#473)
  • Close async generators created by Executors on Golem shutdown (#482)

Minor changes

  • Align logs datetime format with yagna - add milliseconds and a TZ offset (#463)

Updates and fixes to the examples

  • Remove unneeded constants from the simple-service-poc example (#462)
  • Fix import path to Service class in the hello-service example (#471)
  • Replace NamedTemporaryFile usage in yacat example (#488)
  • Add default value to yacat keyspace (#490)

Integration test updates

  • Make goth runs compatible with yagna 0.7 (#470)
  • Use dynamic stable branch in goth nightly (#480)

0.6.1-alpha.0

22 Jun 09:26
e78ae28
Compare
Choose a tag to compare
0.6.1-alpha.0 Pre-release
Pre-release
Close async generators created by Executors on Golem shutdown (#482)

Computing-Tabulating-Recording Co

16 Jun 13:30
Compare
Choose a tag to compare

Changelog

Major changes

  • Make Golem class the new entrypoint for the API, extract common parts into an the internal _Engine (#365)
  • Add yapapi.service - new high-level API for Services (#383)

Additonal features

  • Enable using asynchronous task iterators as sources of tasks (#360)
  • Add support for execution script output capturing (with optional blocking) (#367)
  • Add WorkContext.terminate() method (#411)
  • Allow parametrization of WorkContext.start() (#409)
  • New example: Simple Service POC (#303)
  • New examples: minimal batch and minimal service (#421)

Fixes

  • Update versions for some dependencies to fix poetry solver issues (#395)
  • Fix passing command errors from the engine to worker functions (#394)
  • Wait for instance tasks before shutting down a Cluster (#423)
  • Always cancel process_invoices_job when shutting down the Golem engine (#452)
  • Silence asyncio.CancelledError when awaiting the just-cancelled task (#449)

Documentation updates

  • Adjust README.md to changes in the API (#451)
  • Add missing docstrings for public classes and methods (#416)
  • Add a docstring for the Golem class (#447)
  • Add some comments to the SmartQueue (#357)
  • fix DemandBuilder example usage (#382)

Other updates

  • Refactor yacat example to use the updated API (#403)
  • Blender example: do not overwrite blender example debug logs (#361)
  • Replace message in events.CommandExecuted with stdout and stderr (#379)
  • Immediately terminate agreement after service instance finishes (#420)
  • Move Golem and Job from yapapi.executor.__init__ to yapapi.golem (#431)
  • Move some modules from yapapi/executor to yapapi/ (#434)
  • Make the default Service.run() await indefinitely instead of yielding None in a loop (#448)
  • Make summary logger the default event consumer (#428)
  • Use devnet-beta.2 as the default subnet in examples (#413)

Internal changes

  • Make find_offers() an Executor method; handle offer proposals concurrently (#306)
  • Refactor SmartQueue to work correctly with asynchronous task iterators (#399)
  • Enable multiplexing of command batches and control signals in the services' state handler (#408)

Integration testing

  • Add an integration test that starts blender example in goth (#281)
  • Add an integration test for multi-activity agreement (#350)
  • Add nightly workflows for goth tests (#363)
  • Use goth package from PyPI (#309)
  • Bump goth version to 0.3.* (#405)