{"id":25874657,"url":"https://github.com/lyft/pynamodb-attributes","last_synced_at":"2025-04-10T01:09:24.185Z","repository":{"id":33791538,"uuid":"162477759","full_name":"lyft/pynamodb-attributes","owner":"lyft","description":"Common attributes for PynamoDB","archived":false,"fork":false,"pushed_at":"2024-05-17T15:09:18.000Z","size":84,"stargazers_count":58,"open_issues_count":4,"forks_count":12,"subscribers_count":389,"default_branch":"master","last_synced_at":"2025-04-10T01:09:18.748Z","etag":null,"topics":["lyft"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/lyft.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-12-19T18:47:29.000Z","updated_at":"2024-10-17T22:35:52.000Z","dependencies_parsed_at":"2024-06-19T00:19:55.335Z","dependency_job_id":"c96240fd-4b68-428d-9202-0e8dd821bac7","html_url":"https://github.com/lyft/pynamodb-attributes","commit_stats":{"total_commits":57,"total_committers":14,"mean_commits":4.071428571428571,"dds":0.543859649122807,"last_synced_commit":"af4b50f6c929594f1d10286b3ab363926502a31e"},"previous_names":[],"tags_count":21,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyft%2Fpynamodb-attributes","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyft%2Fpynamodb-attributes/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyft%2Fpynamodb-attributes/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/lyft%2Fpynamodb-attributes/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/lyft","download_url":"https://codeload.github.com/lyft/pynamodb-attributes/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248137886,"owners_count":21053775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["lyft"],"created_at":"2025-03-02T09:28:39.172Z","updated_at":"2025-04-10T01:09:24.167Z","avatar_url":"https://github.com/lyft.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"This Python 3 library contains compound and high-level PynamoDB attributes:\n\n- `FloatAttribute` – same as `NumberAttribute` but whose value is typed as `float`\n- `IntegerAttribute` – same as `NumberAttribute` but whose value is typed as `int` (rather than `float`)\n- `IntegerSetAttribute` – same as `NumberSetAttribute` but whose value is typed as `int` (rather than `float`)\n- `UnicodeDelimitedTupleAttribute` - a delimiter-separated value, useful for storing composite keys\n- `UnicodeEnumAttribute` - serializes a string-valued `Enum` into a Unicode (`S`-typed) attribute\n- `UnicodeProtobufEnumAttribute` - serializes a Protobuf enum into a Unicode (`S`-typed) attribute\n- `IntegerEnumAttribute` - serializes a int-valued `Enum` into a number (`N`-typed) attribute\n- `TimedeltaAttribute`, `TimedeltaMsAttribute`, `TimedeltaUsAttribute` – serializes `timedelta`s as integer seconds, milliseconds (ms) or microseconds (µs)\n- `TimestampAttribute`, `TimestampMsAttribute`, `TimestampUsAttribute` – serializes `datetime`s as Unix epoch seconds, milliseconds (ms) or microseconds (µs)\n- `IntegerDateAttribute` - serializes `date` as an integer representing the Gregorian date (_e.g._ `20181231`)\n- `UUIDAttribute` - serializes a `UUID` Python object as a `S` type attribute (_e.g._ `'a8098c1a-f86e-11da-bd1a-00112444be1e'`)\n- `UnicodeDatetimeAttribute` - ISO8601 datetime strings with offset information\n\n## Testing\n\nThe tests in this repository use an in-memory implementation of [`dynamodb`](https://aws.amazon.com/dynamodb). To run the tests locally, make sure [DynamoDB Local](https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/DynamoDBLocal.html) is running. It is available as a standalone binary, through package managers (e.g. [Homebrew](https://formulae.brew.sh/cask/dynamodb-local)) or as a Docker container:\n```shell\ndocker run -d -p 8000:8000 amazon/dynamodb-local\n```\n\nAfterwards, run tests as usual:\n```shell\npytest tests\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flyft%2Fpynamodb-attributes","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Flyft%2Fpynamodb-attributes","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Flyft%2Fpynamodb-attributes/lists"}