Skip to content

Releases: thislight/away

v0.1.3: Poller function, enhanced helper library and more

21 Feb 14:50
Compare
Choose a tag to compare

Highlights

  • Scheduler can accepts a poller function which may block the running native thread, and will call it in every turn with the time to next event.
  • New helper libraries: promises (away.promise), series (away.series), high resolution timer (away.hrt).
  • Scheduler will trigger the "stop" watcher (scheduler.watchers.stop) while leaving from .run and .runforever, even in error.
  • Away call current_thread will instantly resume the caller thread.
  • set_target_thread_uniqueness_checker() and set_target_thread_uniqueness_checker() in debugger are deprecated.

v0.1.2: Performance Improvments & Bug Fixes

10 Jan 13:42
Compare
Choose a tag to compare

Highlights

  • improve performance about timer and threadpool
  • threadpool.first_waiting_executor is deprecated. Please use threadpool.remove_avaliable_executor instead
  • threadpool.create_executor does not return the descriptor
  • set_timers now return the timers you set
  • set_timeout, set_repeat now return the timer
  • fix: threadpool may unexpectedly run function in dead executor

v0.1.1: Thread Pool and Built-in Timers

02 Nov 14:57
Compare
Choose a tag to compare

Overview

  • built-in timers (away call set_timers; helpers set_timers, set_timeout, set_repeat, sleep; scheduler method set_timer)
  • thread pool
  • debugger:wrapenv
  • scheduler.new
  • schedule_task (away call and helper)

Change log

ac84e1e bump version to 0.1.1
bfbcf04 fix layout error in usage
80f6cbe fix error in scheduler:set_timer usage
6419770 fix typo in usage
41e32e8 fix typo in usage
7f2eeeb update usage for away call schedule_task
80da2ca new away call schedule_task
138d82a update usage for scheduler
ac8a16a update usage for new helpers
fb78327 update usage for scheduler.set_timer
243897c update usage for threadpool.gc
8d9b51b update usage for away call set_timers
71b0dae update usage for threadpool
c641fd1 update testcase for sleep
d1e58ee update README
1e7eb36 update README
2b99332 away.threadpool: gc() skipped when executors' number is less than waiting_limit
23d274c update test case for set_timers
d03d782 scheduler: remove run timed events as excepted
7c098fb debugger: fix wrapenv() calling nil value
8e2b23f scheduler.new
0b7d4bb debugger:wrapenv
45000e9 scheduler:run_task run functions in threadpool
04b4088 fix problems that away call set_timers does not wakeback calling thread
df67753 helper functions set_timers, set_timeout, sleep, set_repeat
4add352 away call "set_timers"
51fc50f threadpool and timers

v0.1.0-1: Rockspecs' Fix

11 Oct 12:39
Compare
Choose a tag to compare

Overview

Fix rockspec and the rockspec template away-git-0.rockspec

Change log

be07787 fix rockspec & bump to version 0.1.0-1

v0.1.0: More Helpers for Debugging & Editable Watchers

10 Oct 23:57
Compare
Choose a tag to compare

Overview

  • a set of new debugger functions (related project: https://github.com/thislight/away/projects/2)
    • .create and .cleanup
    • .set_thread_jump_recorder
    • .unset_watchers
    • .set_signal_uniqueness_checker
    • .set_target_thread_uniqueness_checker
    • .set_default_watchers and .unset_default_watchers
    • .new_environment
    • .set_timeout
    • .debug.sethook
  • new mocking library: away.debugger.mocks
  • helper fireline in away
  • add tests
  • document updates
  • rewritten watcher implementation: now you can edit watchers
  • scheduler.add_watcher now return the watcher

Change log

62d4783 bump to version 0.1.0
cc8548e update tests for away
63fe882 mocks.thread: counting resumed times
54f4214 add contribution guide
66dd359 debugger.debug : .sethook()
66fff24 debugger: .is_next_signal_match
3485a98 update README
ed8deca add test for debugger
39455a3 update away tests to add set_timeout
685e95a debugger: .set_timeout()
6db047a add tests for away
0c9082b add mocks, a simple mocking library
b7ed21b debugger: bug fix about new_environment
0c9a064 away: fix bug which set watcher fields unexceptly
a9deb1a debugger: new_environment()
96116d0 away: error handler
0a9410c debugger: new implementation for set_signal_uniqueness_checker
f6c951e update README for version number changed
8a0c46d update a few of usage for debugger
4e30fa7 update README for external helpers
17a4d9e update example for signal or target thread uniqueness checkers
6a56dfa debugger: signal uniqueness checker and target thread uniqueness checker
8cada2b debugger: .set_thread_jump_recorder() and .unset_watchers()
a3f0b38 debugger: set and unset default watchers
4ab22a5 scheduler.add_watcher: return watcher
294a02b debugger: .create() and .cleanup()
ba9ea1f update watchers' name in usage
cd17dee update usage for fireline
10dd63e away: editable watchers
4b868d4 update usage for wait_signal_*

v0.0.5: Away Calls: "push_signals" and Customisable Signal for "schedule_thread"

03 Oct 08:31
Compare
Choose a tag to compare

Overview

  • new away call push_signals is added, which can push signals to queue and wakeback thread as soon as possible
  • away call schedule_thread now accept .mixsignal in signal as the waking signal template
  • schedule_thread(thread, signal) and push_signals

Change log

8a2a3e3 bump to version 0.0.5
8ab7ea7 clean up document usage
1559735 update usage for helper functions
15fb235 update README
cb02d40 update USAGE for scheduler
9970f78 update document
3a30631 away call schedule_thread: now accept.mixsignal to customise signal to send
dd94c14 new away call 'push_signals'

v0.0.4: Removal of Microtasks, Helper wakeback_later()

01 Oct 14:58
Compare
Choose a tag to compare

Overview

  • wakeback_later(): yield from thread and execpt to be wakeback later from signal queue
  • remove microtask_service and schedule_microtask

Change log

7a336cc bump to version 0.0.4
27f3beb update README
9dbcc02 update example
62448ee remove schedule_microtask and microtask_service
b6a49ce wakeback_later() and deprecate schedule_microtask()

v0.0.3-1: Hotfix for Rockspec

19 Sep 14:02
Compare
Choose a tag to compare
Pre-release

Change log

ea6863d fix rockspec & bump to version 0.0.3-1
ac4ec28 fix typo in usage

v0.0.3: Away Calls for Scheduling Threads and Microtasks, Nilable Auto Signal Generator

09 Sep 02:02
Compare
Choose a tag to compare

Overview

  • New away calls
    • schedule_threads
    • schedule_microtask
  • New watcher: set_auto_signal(scheduler, autosig_gen, first_signal)
  • Watcher push_signal now receive index as #3.
  • Auto signal generator return nil now means skipping

Change log

42f54be bump to version 0.0.3
6720288 update usage
d9a17a1 fix table_deep_copy refrence
237af89 scheduler: microtask feature
329d220 new watcher set_auto_signal
76b0070 away: won't push when autosig generator return nil
d3c2788 fix typo for README
22fa56d update README
19c78e4 add parameter  #3 'index' for watcher push_signal
13414de away call 'schedule_thread'

v0.0.2: Friendly Debugging & “away call” get_current_thread

02 Sep 08:23
Compare
Choose a tag to compare

Overview

It's hard in asynchronous programming to debugging. In this version of away, introduced two features which helps you debugging your program with away:

  • Debugger
  • Scheduler Watchers

Currently, Debugger only contains some functions helps you track threads easier with console and give a pretty string of a table, but we believes that list will grow in future.
"Scheduler Watchers" means that now you can add some watchers in the key points of the scheduler's running.

In this version, a most used case get_current_thread also is brought by "away call", a new feature which helps code get some important information from scheduler without touching it directly.

Change log

b9082e2 bump to 0.0.2-0
dd02b19 add watcher before_run_step
097886b update example for debugger
321bbbb away.debugger
671656f fix topstring in example
e8fd603 scheduler.push_signal accept index & away call & get_current_thread
afc307b add push_signal watcher to example
8b35fed add watching feature to scheduler
3b83181 update documet 'design'
d2d36ce remove directory .vscode
7359cf5 Rename 0.0.1 rockspec
0401a79 add rockspecs