Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Async server #366

Open
wants to merge 81 commits into
base: master
Choose a base branch
from
Open

Async server #366

wants to merge 81 commits into from

Commits on Apr 16, 2024

  1. Reimplement status codes by hand

    Instead of using bitflags, this reimplements the status code struct by
    hand. Using bitflags has some unfortunate side effects in that it makes
    the debug implementation completely wrong. This way we get a much richer
    implementation of the status code, which is also more correct.
    
    This includes a validate method, which might be handy, but it is not enforced
    anywhere.
    
    The implementation uses some relatively simple declarative macros, so
    the old JS script used for codegen is removed.
    einarmo committed Apr 16, 2024
    Configuration menu
    Copy the full SHA
    76b9893 View commit details
    Browse the repository at this point in the history

Commits on May 12, 2024

  1. Move buffer impl to core

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    2cce1bf View commit details
    Browse the repository at this point in the history
  2. Async server tcp transport

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    ea61b4c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    6c8c656 View commit details
    Browse the repository at this point in the history
  4. Functional connection!

    It is now possible to establish a connection, end to end, using the
    async client and async server. Next up is writing framework code for
    services, then implementing the existing in-memory node manager.
    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    5910a2a View commit details
    Browse the repository at this point in the history
  5. Node manager work

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    ca34f63 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    bca247c View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    77bd0c1 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    b619766 View commit details
    Browse the repository at this point in the history
  9. In memory address space work

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    a0f2f7d View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    7fbbf57 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    18ffd92 View commit details
    Browse the repository at this point in the history
  12. Even more insane external references impl

    This one is more correct, but this got very complex. Probably worth
    splitting into its own module and perhaps finding some way to improve
    code clarity at some point.
    
    In general the change is good though, I think.
    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    f2d3edf View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    cfeb771 View commit details
    Browse the repository at this point in the history
  14. Scaffolding for translate browse paths

    This service is a nightmare with this design. Hopefully things will get
    a lot simpler once we get away from browse.
    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    38df674 View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    e81f722 View commit details
    Browse the repository at this point in the history
  16. Register and unregister

    Pretty much just empty impls for now, but the stuff in the node manager
    is at least really simple, which is good.
    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    375e174 View commit details
    Browse the repository at this point in the history
  17. Fix translate browse paths

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    ae40c38 View commit details
    Browse the repository at this point in the history
  18. More crazy translate browse paths code

    This should, maybe, fix the one remaining hole in that implementation.
    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    4182468 View commit details
    Browse the repository at this point in the history
  19. Initial subscriptions work

    einarmo committed May 12, 2024
    Configuration menu
    Copy the full SHA
    9af75f1 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2024

  1. More monitored item work

    einarmo committed May 26, 2024
    Configuration menu
    Copy the full SHA
    c2465e5 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2024

  1. More subscription logic

    Finally finishing up the core logic, just need to implement services and
    node manager functionality.
    einarmo committed Jun 5, 2024
    Configuration menu
    Copy the full SHA
    7ff96fb View commit details
    Browse the repository at this point in the history

Commits on Jun 6, 2024

  1. Finish the "easy" subscription services

    Next is handling monitored items
    einarmo committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    0303842 View commit details
    Browse the repository at this point in the history
  2. Some refactor

    einarmo committed Jun 6, 2024
    Configuration menu
    Copy the full SHA
    5ea7e91 View commit details
    Browse the repository at this point in the history

Commits on Jun 7, 2024

  1. All subscription services

    einarmo committed Jun 7, 2024
    Configuration menu
    Copy the full SHA
    6a93ec8 View commit details
    Browse the repository at this point in the history
  2. Working subscription logic

    einarmo committed Jun 7, 2024
    Configuration menu
    Copy the full SHA
    55eb607 View commit details
    Browse the repository at this point in the history
  3. Better configuration

    einarmo committed Jun 7, 2024
    Configuration menu
    Copy the full SHA
    e5449b5 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    024f793 View commit details
    Browse the repository at this point in the history

Commits on Jun 9, 2024

  1. Event filter madness

    einarmo committed Jun 9, 2024
    Configuration menu
    Copy the full SHA
    a7ea746 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2024

  1. More event filter stuff

    einarmo committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    0fa293c View commit details
    Browse the repository at this point in the history
  2. Finish up event sub support

    einarmo committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    be13fda View commit details
    Browse the repository at this point in the history

Commits on Jun 11, 2024

  1. Move monitored item overview to subscriptioncache

    This is potentially slightly less efficient (though node managers still
    have the ability to make it efficient, and likely will in most normal
    circumstances), but it greatly simplifies implementing node managers
    which is good.
    einarmo committed Jun 11, 2024
    Configuration menu
    Copy the full SHA
    0db3138 View commit details
    Browse the repository at this point in the history
  2. Finish up subscriptions

    einarmo committed Jun 11, 2024
    Configuration menu
    Copy the full SHA
    ba74091 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2024

  1. Implement history read/update and write

    Just basic implementations, as the in-memory-node-manager doesn't do
    much with these by default.
    einarmo committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    c488af4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    f5c1957 View commit details
    Browse the repository at this point in the history

Commits on Jun 14, 2024

  1. Configuration menu
    Copy the full SHA
    9a55c4d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1cbef82 View commit details
    Browse the repository at this point in the history

Commits on Jun 18, 2024

  1. Implement Call

    einarmo committed Jun 18, 2024
    Configuration menu
    Copy the full SHA
    a3c4bca View commit details
    Browse the repository at this point in the history

Commits on Jun 19, 2024

  1. Configuration menu
    Copy the full SHA
    72fb2eb View commit details
    Browse the repository at this point in the history

Commits on Jun 20, 2024

  1. Configuration menu
    Copy the full SHA
    bb8805a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    b46d585 View commit details
    Browse the repository at this point in the history

Commits on Jun 26, 2024

  1. Consolidate some stuff

    einarmo committed Jun 26, 2024
    Configuration menu
    Copy the full SHA
    d4e0673 View commit details
    Browse the repository at this point in the history
  2. Capabilities reporting

    einarmo committed Jun 26, 2024
    Configuration menu
    Copy the full SHA
    4e39789 View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2024

  1. Some more cleanup and utils

    einarmo committed Jun 28, 2024
    Configuration menu
    Copy the full SHA
    bf1b16f View commit details
    Browse the repository at this point in the history

Commits on Jul 1, 2024

  1. Namespace diagnostics

    einarmo committed Jul 1, 2024
    Configuration menu
    Copy the full SHA
    0cb0f09 View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2024

  1. Test harness

    einarmo committed Jul 2, 2024
    Configuration menu
    Copy the full SHA
    19c3f1f View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2024

  1. Test node manager

    einarmo committed Jul 4, 2024
    Configuration menu
    Copy the full SHA
    6afda97 View commit details
    Browse the repository at this point in the history

Commits on Jul 5, 2024

  1. Tests for read and write

    einarmo committed Jul 5, 2024
    Configuration menu
    Copy the full SHA
    78ce400 View commit details
    Browse the repository at this point in the history
  2. Test for history read

    einarmo committed Jul 5, 2024
    Configuration menu
    Copy the full SHA
    8518346 View commit details
    Browse the repository at this point in the history
  3. Make depth gauge not use arc

    Just some free perf I realized we could get easily here.
    einarmo committed Jul 5, 2024
    Configuration menu
    Copy the full SHA
    e156a68 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2024

  1. History update test

    einarmo committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    6633b52 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ad52730 View commit details
    Browse the repository at this point in the history
  3. Translate browse paths tests

    einarmo committed Jul 9, 2024
    Configuration menu
    Copy the full SHA
    0ba3f6c View commit details
    Browse the repository at this point in the history

Commits on Jul 10, 2024

  1. Add tests for subscriptions

    einarmo committed Jul 10, 2024
    Configuration menu
    Copy the full SHA
    5913a21 View commit details
    Browse the repository at this point in the history

Commits on Jul 11, 2024

  1. Tests for methods

    einarmo committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    6a55bbb View commit details
    Browse the repository at this point in the history
  2. Node management tests

    einarmo committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    477219c View commit details
    Browse the repository at this point in the history
  3. Remove most of the old server

    einarmo committed Jul 11, 2024
    Configuration menu
    Copy the full SHA
    0b04557 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    31cc664 View commit details
    Browse the repository at this point in the history

Commits on Jul 12, 2024

  1. Configuration menu
    Copy the full SHA
    9f9cf48 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    ffeec15 View commit details
    Browse the repository at this point in the history

Commits on Jul 13, 2024

  1. Configuration menu
    Copy the full SHA
    e2bac28 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2024

  1. Configuration menu
    Copy the full SHA
    d43eaf5 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2024

  1. Configuration menu
    Copy the full SHA
    be2753e View commit details
    Browse the repository at this point in the history
  2. Lift attribute parsing too

    einarmo committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    18f9ccd View commit details
    Browse the repository at this point in the history
  3. Fix simple server

    einarmo committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    82b4f77 View commit details
    Browse the repository at this point in the history
  4. Fix chess server

    einarmo committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    158d317 View commit details
    Browse the repository at this point in the history
  5. Fix demo server

    einarmo committed Jul 16, 2024
    Configuration menu
    Copy the full SHA
    56c89e4 View commit details
    Browse the repository at this point in the history

Commits on Jul 17, 2024

  1. Configuration menu
    Copy the full SHA
    47c7e65 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8c5e3fd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f70a627 View commit details
    Browse the repository at this point in the history

Commits on Jul 18, 2024

  1. Configuration menu
    Copy the full SHA
    b2fcc0d View commit details
    Browse the repository at this point in the history

Commits on Jul 19, 2024

  1. Update documentation

    einarmo committed Jul 19, 2024
    Configuration menu
    Copy the full SHA
    9826e47 View commit details
    Browse the repository at this point in the history

Commits on Jul 23, 2024

  1. Configuration menu
    Copy the full SHA
    769e621 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2024

  1. Format

    einarmo committed Jul 24, 2024
    Configuration menu
    Copy the full SHA
    be1bd63 View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2024

  1. Fix session timeout

    This thing may need some more work, it also means that having multiple
    sessions in a single transport won't work properly.
    einarmo committed Jul 28, 2024
    Configuration menu
    Copy the full SHA
    0745980 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2024

  1. Configuration menu
    Copy the full SHA
    d62d257 View commit details
    Browse the repository at this point in the history
  2. Improve session timeout logic

    einarmo committed Jul 29, 2024
    Configuration menu
    Copy the full SHA
    8d202e4 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    192e7af View commit details
    Browse the repository at this point in the history
  4. Remove a few direct references to constants

    Should go through server config, generally.
    einarmo committed Jul 29, 2024
    Configuration menu
    Copy the full SHA
    69df20f View commit details
    Browse the repository at this point in the history

Commits on Aug 14, 2024

  1. Configuration menu
    Copy the full SHA
    9961179 View commit details
    Browse the repository at this point in the history

Commits on Sep 6, 2024

  1. Configuration menu
    Copy the full SHA
    a6c7eb8 View commit details
    Browse the repository at this point in the history