-
Notifications
You must be signed in to change notification settings - Fork 9
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
Partial context updates #93
Open
pseusys
wants to merge
310
commits into
dev
Choose a base branch
from
feat/partial_context_updates
base: dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
310 commits
Select commit
Hold shift + click to select a range
4a096d2
Partly get the tests passing
ruthenian8 f6794d1
partial fix of tests
ruthenian8 336434b
base refactor: tests not passing
ruthenian8 57d31b8
Partly get the tests passing
ruthenian8 c497250
partial fix of tests
ruthenian8 679f0d4
clear table implemented
pseusys 4bd5e7d
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys a90e885
tests fixed
pseusys 1779588
merge feat/partial_context_updates
ruthenian8 6cb2fc2
TODO removed
pseusys 3e57997
Remove FieldType parameter; introduce ValueField, DictField, ListFiel…
ruthenian8 8be1be9
Merge branch 'proposal/partial_updates' into feat/partial_context_upd…
ruthenian8 3af0995
Merge proposal && apply lint
ruthenian8 50ed68e
Fix mongo len method
ruthenian8 77bef1d
ignore long lines in ydb
ruthenian8 45c0c3f
update docstrings: add examples paths
ruthenian8 3ebdc26
rename outlook to subscript
ruthenian8 cccc667
remove mark_db_not_persistent
ruthenian8 db110db
rename variables, move comprehensions to own variable from for loops;
ruthenian8 63a9101
keycast function renamed
pseusys a14c72d
read write policies
pseusys e5b98bd
lint applied
pseusys dd1d3f0
some other notes fixed
pseusys 504c531
tests restored
pseusys e206b72
lint applied
pseusys 653c3a6
add type aliases
ruthenian8 6e583f3
test proposal
pseusys 45e044a
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys ab6944a
hash clearing added
pseusys 40d18b4
some sql problems solved
pseusys 83547a6
update property added
pseusys 89bdf54
typos fixed
pseusys 6c17b1e
new scheme proposal
pseusys e263354
new subscript type (no subscript)
pseusys 9d00610
private key, 3 default values and test fix
pseusys ec543d2
sample example added
pseusys 8950e60
example db cleaned
pseusys 157a18a
mongo completed
pseusys 38b06f0
sql operational
pseusys d1e1b4f
ydb operational (for current test set)
pseusys acfb571
sql redefinition fixed
pseusys 02eedff
attributes moved to vars
pseusys 9e77d90
type checks and restrictions added
pseusys fcfaf06
function order fixed
pseusys 885c899
policies tests added
pseusys 6ae19ef
_hilarious_ YDB random bug fixed **again** just for `FUN`
pseusys 155867d
lint applied
pseusys 2a81e93
tests restored
pseusys cf2e8db
Merge branch 'dev' into feat/partial_context_updates
pseusys d4ad968
errors fixed
pseusys ad9eb62
fixed two more errors
pseusys e57cfd1
docstrings added
pseusys 0dc2070
mongo bug fixed
pseusys 04e27c6
redis optimized
pseusys bea2155
mongo indexes added
pseusys 9eef2ca
one less query for redis
pseusys ab0aaf8
sql requests made async
pseusys 98f427d
one other option for SQL storages
pseusys 5588dc6
sqls fixed
pseusys 8121a25
duplicate indexes removed
pseusys 5fe4d31
sqlite async error fixed
pseusys 74e76b5
sync writes
pseusys b00fc30
async disabling possibility added, query parameters overflow fixed
pseusys 5755d06
sql log read finished
pseusys 5d70793
load test added, all items fixed
pseusys 221fa01
ydb implemented
pseusys dd5c4d0
mongo finished
pseusys b44484d
mongo passes all tests correctly
pseusys ecc92bf
single log behavior added as default
pseusys 8ce83ce
limit removed
pseusys 08f2999
sql reworked
pseusys 77a3d79
overread disabled
pseusys 6bd931c
and now really updated
pseusys 1c5e170
sparse logging
pseusys 84a84ad
double writing disabled
pseusys 9b94df9
faster (probably) serialization setup
pseusys b32aa73
faster pickle fixed
pseusys 01f8b46
potential data loss prevented
pseusys c28b792
serializer interface added, datetime args added
pseusys 5cb1b45
mongo ready
pseusys ccbc07a
redis done + active_ctx returned
pseusys 49435da
ydb ready
pseusys 39d0da7
file-based
pseusys 1ca66ed
with_stem removed
pseusys 9bb3eb7
ydb ??? again??
pseusys a8c6497
len and prune
pseusys 2bbf6e4
redis delete number of args changed
pseusys 7aefa5b
Update community.rst, revert some changes
pseusys 6fa0542
one line reverted
pseusys fa9359f
double serialization removed
pseusys 9fdf5bd
no_dependencies_tests_fixed
pseusys c70157a
serializer changed
pseusys 05f0d94
serializer unchanged (example)
pseusys 95ba296
partial tutorials started
pseusys cd020c9
context storages made async
pseusys 687ba7e
tutorials added
pseusys 425a744
example context storage removed
pseusys 2403aed
docs added
pseusys b4546b4
storages docs updated
pseusys bdda5ff
reviewed problems fixed
pseusys 414e4a0
file-based dbs made sync
pseusys e5357fc
quickle removed
pseusys edeb376
Excessive description removed
pseusys 895011c
Merge branch 'dev' into feat/partial_context_updates
pseusys 78d2ccc
migrated to pydantic 2.0
pseusys d4bff86
Documentation building fixes (#186)
pseusys 821713c
add patch for json context storage
ruthenian8 fca7c42
json storage fixed
pseusys 33dabc8
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys c5ad6d5
test pickle save and load with logging
pseusys 8deaabd
timestamp conversion test for windows
pseusys cbe7c70
time in nanoseconds for windows
pseusys b14239e
ok ok windows take this
pseusys ed888d4
some other idea to trick windows
pseusys 998fb2c
excessive logging removed
pseusys 12f938e
config dicts fixed + module docstrings added
pseusys dbc8928
linting and formatting fixed
pseusys ab43a98
s's removed from docstrings
pseusys cc18acc
Merge branch 'dev' into feat/partial_context_updates
pseusys 7f850ee
type defined
pseusys 9fe28c9
property docstring added
pseusys 6e4eb75
Merge branch 'dev' into feat/partial_context_updates
pseusys c25c48d
dff installation cell added to tutorial 8
pseusys 6856ee5
shelve improved
pseusys 5314e31
partial review reaction
pseusys 7f1835e
more documentation added
pseusys cd76105
finished review
pseusys 4238f9b
Merge branch 'dev' into feat/partial_context_updates
RLKRo 50cda47
put benchmark tutorial after partial updates one
RLKRo 4cc055a
Merge branch 'dev' into feat/partial_context_updates
pseusys 7f77c8f
context storages updated
pseusys 2617255
old naming reset
pseusys 4fb8f67
context merge fixed
pseusys 1230d16
context ids removed
pseusys c3d82da
context equality tested
pseusys 0bd6347
framework data comparison removed
pseusys 4a15bf0
context id removed from everywhere
pseusys 9b3dd80
lint applied
pseusys 4f0562a
documentation building fixed
pseusys ef0a9ee
RST syntax fixed
pseusys 3d364bc
context dict added
pseusys e7ad269
async + pydantic
pseusys be34714
fixes
pseusys b8701a0
hashes manipulation only on `write_full_diff`
pseusys a58eace
ctx_dict + ctx updated
pseusys 33f2823
setting removed
pseusys c4f9fce
sets added
pseusys e892a52
serialization added, sample context storage class created
pseusys 1b8aa0d
iterative async access made synchronous
pseusys 173b1fe
sql prototype
pseusys 9665038
context API updated proposal
pseusys 3468af5
context schema and serializer removed
pseusys 71bd9f3
context API updated once again
pseusys 2e6b334
review notes fixed
pseusys 830ea40
ContextDictView made mutable
pseusys 5d3dd95
context dict file split
pseusys f00ba02
turn introduction reverted
pseusys 1af24db
turns separated (again)
pseusys 3616ac0
key deletion now nullifies value
pseusys 81ce7ba
memory storage
pseusys 1f9e653
ctx_dict tests done
pseusys c981cc5
general context storages tests created
pseusys 5002dda
ctx_dict updated not to use serializer
pseusys 3e6a8f4
merge dev
RLKRo 6991fb6
Merge branch 'refs/heads/dev' into feat/partial_context_updates
RLKRo 5b80818
fix imports in newly added files
RLKRo 96af9bc
hide circular imports behind type checking
RLKRo 000fb0d
fix imports in test files
RLKRo 2c2ab9d
merge context.init into context.connected
RLKRo 2eb5a2c
remove get_last_index imports
RLKRo 06d54b9
update pipeline.context_storage type
RLKRo f80e6a3
fix bug with setting sequence type values under a single key
RLKRo c5311f6
revert primary_id renaming
RLKRo d43752a
memory test (almost!) finished
pseusys 1ae3e4f
ctx_dict tests fixed
pseusys 85315a6
add overload for getitem
RLKRo 351a43e
split typevar definitions
RLKRo e9eb2fb
remove asyncio mark
RLKRo 6d93399
allow using negative indexes for context dict
RLKRo e2053dc
add validation on setitem for context dict
RLKRo acdcd3c
fixes
RLKRo 16a3d77
allow non-str context ids
RLKRo 9a76ae3
add current_turn_id
RLKRo 5e37651
fix tests
RLKRo d376e49
update doc
RLKRo 256e296
integer keysreversed
pseusys e2ffa0a
sql storage update function fix
pseusys 9043dca
move context factory and pipeline fixtures to global conftest
RLKRo d58ce7c
unbound V from BaseModel
RLKRo 6905bcd
remove default marker; return None by default
RLKRo 0ac3c1e
fix key slicing
RLKRo 3956348
use current_turn_id in check_happy_path
RLKRo d37c4e2
use context_factory to initialize context in non-core tests
RLKRo 2bf82f9
fix: await misc get
RLKRo 8a4d8be
update pipeline tutorials
RLKRo 6404eb4
allow initializing MemoryContextStoraeg via context_storage_factory
RLKRo 240cded
move all db tests into a single parametrized test class
RLKRo 535d524
SQL testing fixed
pseusys 6e0a103
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys 862e7d3
test_dbs fixed
pseusys e82d086
file context storages implemented
pseusys 59f91c1
file and sql fixed
pseusys 1c97303
async file dependency removed
pseusys f5ceb2f
rename delete_main_info to delete_context
RLKRo cf27afa
fix load_field_items typing
RLKRo c1a24ee
rewrite db tests
RLKRo f2ec013
Merge branch 'refs/heads/dev' into feat/partial_context_updates
RLKRo cb22d12
small None checking update
pseusys 8ba5aed
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys d9b95f6
tests updated
pseusys 7277bf9
mongo done
pseusys e1cb50d
redis done
pseusys 782bf66
ydb finished
pseusys 0fb487b
raise error in abstract method
RLKRo ff70324
update service tests
RLKRo b59cf95
Merge remote-tracking branch 'origin/feat/partial_context_updates' in…
RLKRo d3af3b2
update lock file
RLKRo e38e2d4
fieldconfig removed
pseusys de739f2
update benchmark utils
RLKRo eaa8a87
aiofile reverted
pseusys 53bf877
misc tables removed
pseusys 7629fbc
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys 757fe48
denchmark awaiting removed
pseusys a001c27
Merge branch 'refs/heads/dev' into feat/partial_context_updates
RLKRo 96d05dc
update lock file
RLKRo 1430544
fix context size calculation
RLKRo 403e2e1
change model_dump mode
RLKRo 5340256
key filter implementation
pseusys 9aad1bb
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys b32b367
ctx_dict hashes update added
pseusys edc85bd
added and removed sets cleared upon storage
pseusys e61b1b7
Revert "key filter implementation"
RLKRo d114d42
sql and file logging added
pseusys 3619125
Merge branch 'feat/partial_context_updates' of https://github.com/dee…
pseusys 5618484
debug logging added
pseusys 5e6e223
use standard logging practices
RLKRo 4323871
make logging more uniform across the methods and collapse long lists
RLKRo 93144df
fix potential error in prefix parsing
RLKRo 83c7b33
Merge branch 'refs/heads/dev' into feat/partial_context_updates
RLKRo b763f21
create tmp file only for file dbs
RLKRo 69d1520
add test for load_field_items
RLKRo 291396f
test fix: misc no longer context dict
RLKRo c3d8c73
test fix: load_field_items no longer returns dict
RLKRo 4bb6ca7
test fix: field config was removed
RLKRo dbbbb28
remove debug artefact
RLKRo 710554c
all user input escapedin ydb
pseusys 20b6b5f
ctx_dict moved
pseusys 2b6eebf
async lock introduced
pseusys 6c458c6
codestyle fixed
pseusys 46e0112
Merge branch 'dev' into feat/partial_context_updates
pseusys File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,11 +1,10 @@ | ||
# -*- coding: utf-8 -*- | ||
|
||
from .database import DBContextStorage, threadsafe_method, context_storage_factory | ||
from .json import JSONContextStorage, json_available | ||
from .pickle import PickleContextStorage, pickle_available | ||
from .database import DBContextStorage, context_storage_factory | ||
from .file import JSONContextStorage, PickleContextStorage, ShelveContextStorage, json_available, pickle_available | ||
from .sql import SQLContextStorage, postgres_available, mysql_available, sqlite_available, sqlalchemy_available | ||
from .ydb import YDBContextStorage, ydb_available | ||
from .redis import RedisContextStorage, redis_available | ||
from .memory import MemoryContextStorage | ||
from .mongo import MongoContextStorage, mongo_available | ||
from .shelve import ShelveContextStorage | ||
from .protocol import PROTOCOLS, get_protocol_install_suggestion |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Could anyone please confirm this file works fine? Considering all the pydantic models added?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If there's no error, it works fine.
But yes. Some of these rebuilds are no longer required:
SerializableStorage
no longer referencesContext
, so there's no need to rebuild it;ContextDict
does indeed need to be rebuild withDBContextStorage
because it is imported in aTYPE_CHECKING
block duringContextDict
definition.I would suggest trying to remove all the changes but
and see if that works.