• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

zincware / ZnSocket
72%

Build:
DEFAULT BRANCH: main
Repo Added 21 May 2024 03:16PM UTC
Token USOpsvmqYzG3ejH948Kx6Bl5gZLAmEDkn regen
Build 467 Last
Files 14
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

LAST BUILD ON BRANCH main
branch: main
CHANGE BRANCH
x
Reset
Sync Branches
  • main
  • 11-client-object-has-no-attribute-lpop
  • 26-add-listcopy-and-dictcopy
  • 30-dictget-tests
  • 31-compatibility-with-mongodb
  • 32-register-into-an-existing-socketio-server
  • 55-list-set-multiple-values-at-once
  • 59-onrefresh-does-not-trigger-for-nested-structures
  • 61-custom-listextend
  • 66-use-pipeline-for-dictupdate
  • 67-support-dict-|-dict
  • 68-concurrency-issue
  • 71-dictvalues-does-not-work-with-referenced-znsocket-objects
  • 75-infinity-is-not-valid-json
  • 81-configure-timeout-and-retries
  • 86-listadapater
  • 89-provide-fallback-key
  • 96-allow-creating-multiple-objects-using-pipelines
  • List
  • add-types
  • auto-message-split
  • better-js-api
  • bump_depencencies
  • callbacks
  • chunking
  • dct-pop-test
  • dependabot/pip/certifi-2024.7.4
  • dependabot/pip/urllib3-2.2.2
  • dev
  • dict
  • feature/improve-memory-storage
  • fix-perfix-issue
  • flask-integration-test
  • frozen_client
  • improved-adapters
  • js-nested
  • nested
  • nested-refresh
  • node-app
  • none-testing
  • performance
  • pre-commit-ci-update-config
  • py-js-ref-testing
  • redis
  • refactor-object-module
  • repr-update
  • scard
  • segments
  • ts-linting
  • v0.2.1
  • v0.2.2
  • v024bugfixes
  • znjson

12 Dec 2025 06:36AM UTC coverage: 71.788%. Remained the same
20705203248

push

github

web-flow
Feature/improve-memory-storage (#116)

* introduce memory storage

* rename storage class

* Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage

Implements missing Redis operations needed for zndraw application:

- Sorted set operations: zadd, zcard, zrange, zrangebyscore,
  zrevrangebyscore, zrem, zcount with O(log n) performance using
  sortedcontainers.SortedList
- Expiry/TTL support: setex, expire with lazy cleanup on access
- Key scanning: scan_iter with glob pattern matching
- Enhanced thread safety with expiry checks on all read operations
- Pipeline support matching redis-py behavior

All 80 tests pass against both MemoryStorage and Redis to ensure
exact API compatibility. MemoryStorage now serves as a drop-in
replacement for Redis in single-process scenarios.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Enhance MemoryStorage with full Redis-py API compatibility

Add comprehensive Redis-compatible features to MemoryStorage to ensure
exact API parity with redis-py for improved testing and development.

Key enhancements:
- Add nx, xx, ex parameters to set() method for conditional sets and expiration
- Implement incr() and decr() methods for atomic counter operations
- Add count parameter to scan_iter() for result limiting
- Fix hgetall() to return independent copies instead of internal references
- Add _encode_value() method with strict type validation matching Redis

Type validation now exactly matches Redis behavior:
- Accept: str, bytes, int, float (converting numbers to strings)
- Reject: bool, dict, list, and other types with DataError

Test coverage:
- 131 total tests (previously 88)
- All tests pass for both MemoryStorage and redisclient
- Added tests for JSON string handling, type validation, and edge cases
- Verified exact behavioral compatibility with Redis

This ensures MemoryStorage can be used as a drop-in replacement for
Redis during testing with... (continued)

470 of 604 new or added lines in 4 files covered. (77.81%)

160 existing lines in 2 files now uncovered.

1397 of 1946 relevant lines covered (71.79%)

2.87 hits per line

Relevant lines Covered
Build:
Build:
1946 RELEVANT LINES 1397 COVERED LINES
2.87 HITS PER LINE
Source Files on main
  • Tree
  • List 14
  • Changed 0
  • Source Changed 0
  • Coverage Changed 0
Coverage ∆ File Lines Relevant Covered Missed Hits/Line

Recent builds

Builds Branch Commit Type Ran Committer Via Coverage
20705203248 main Feature/improve-memory-storage (#116) * introduce memory storage * rename storage class * Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage Implements missing Redis operations needed for zndraw application: - Sorted set oper... push 05 Jan 2026 04:42AM UTC web-flow github
71.79
20564703585 main Feature/improve-memory-storage (#116) * introduce memory storage * rename storage class * Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage Implements missing Redis operations needed for zndraw application: - Sorted set oper... push 29 Dec 2025 04:26AM UTC web-flow github
71.79
20421496155 main Feature/improve-memory-storage (#116) * introduce memory storage * rename storage class * Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage Implements missing Redis operations needed for zndraw application: - Sorted set oper... push 22 Dec 2025 04:21AM UTC web-flow github
71.79
20220197954 main Feature/improve-memory-storage (#116) * introduce memory storage * rename storage class * Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage Implements missing Redis operations needed for zndraw application: - Sorted set oper... push 15 Dec 2025 04:19AM UTC web-flow github
71.79
20158572852 main Feature/improve-memory-storage (#116) * introduce memory storage * rename storage class * Add Redis-compatible sorted sets, expiry, and scan to MemoryStorage Implements missing Redis operations needed for zndraw application: - Sorted set oper... push 12 Dec 2025 06:44AM UTC web-flow github
71.79
20016252205 main bump version push 08 Dec 2025 04:11AM UTC PythonFZ github
64.95
19811082081 main bump version push 01 Dec 2025 04:27AM UTC PythonFZ github
64.95
19622938541 main bump version push 24 Nov 2025 04:11AM UTC PythonFZ github
64.95
19417854955 main bump version push 17 Nov 2025 04:03AM UTC PythonFZ github
65.02
19220109842 main bump version push 10 Nov 2025 04:04AM UTC PythonFZ github
65.02
See All Builds (466)

Badge your Repo: ZnSocket

We detected this repo isn’t badged! Grab the embed code to the right, add it to your repo to show off your code coverage, and when the badge is live hit the refresh button to remove this message.

Could not find badge in README.

Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

Refresh
  • Settings
  • Repo on GitHub
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc