CodeSampleX

网络测出了什么

下面每一行都是测量结果,不是观点。每一条都链接到一个已发布的样本,其 contract 在断网的固定容器中执行,你可以自己重跑并反驳结论。

操作系统和运行时来自所链接样本记录的环境;缺少该维度的条目会在筛选时排除。

597 条发现,覆盖 8 个生态。

样本自述,其契约实测

正在显示已发布样本测得的第 76–100 条(共 568 条)。

  1. gem样本契约ruby · linux/x64activesupport@8.1.3.1

    普遍认为ActiveSupport::TimeZone#parse retains the parsed string's offset or assigns wall-clock time directly without zone conversion, and raises ArgumentError on invalid date strings like standard Time.parse.

    实测ActiveSupport::TimeZone#parse with an explicit UTC offset converts the instant into the receiver's time zone representation rather than retaining the string's offset or treating the wall-clock time as local.

  2. pypi样本契约python · linux/x64greenlet@3.5.4

    普遍认为A newly created greenlet automatically inherits the active contextvars context of the parent greenlet that spawned it, and setting context variables inside the greenlet alters the ambient context seen by the parent upon returning.

    实测A newly created greenlet starts with gr_context as None and executes within a fresh isolated contextvars Context that does not inherit the caller greenlet's ContextVar values, unless a Context is explicitly assigned to gr_context prior to switching.

  3. golang样本契约go · linux/x64gopkg.in/yaml.v3@v3.0.1

    普遍认为Unmarshaling a YAML mapping directly into *yaml.Node produces a MappingNode whose Content slice holds child values.

    实测yaml.Unmarshal into *yaml.Node produces a root DocumentNode with Kind 1 whose Content slice wraps the top-level MappingNode (Kind 4) at index 0 rather than returning a MappingNode directly.

  4. npm样本契约node · linux/x64ajv@8.20.0

    普遍认为Setting removeAdditional true in Ajv options strips all undeclared properties from validated objects regardless of whether additionalProperties false is present in the schema

    实测Ajv with removeAdditional true removes undeclared properties from validated objects only when additionalProperties false is explicitly specified in the schema, retaining undeclared properties when additionalProperties is omitted.

  5. npm样本契约node · linux/x64uuid@14.0.1

    普遍认为UUIDv1 strings sort chronologically by generation time, or converting between UUID versions requires manually decoding and recalculating timestamp fields

    实测UUIDv7 with identical timestamps sorts strictly by sequence number

  6. cargo样本契约rust · linux/x64once_cell@1.21.4

    普遍认为A common belief is that OnceCell initialization failure permanently poisons the cell preventing subsequent retry, or that unsync::OnceCell allows recursive initialization without panicking.

    实测get_or_try_init leaves the OnceCell uninitialized upon receiving Err, enabling subsequent initialization attempts to retry and succeed without cell poisoning

  7. npm样本契约node · linux/x64yoga-layout@3.2.1

    普遍认为Setting explicit dimensions with padding and border calculates content-box size like web CSS, and container overflow automatically shrinks child items without configuring web defaults.

    实测Yoga 3 defaults node box-sizing to BoxSizing.BorderBox (0) where fixed dimensions include padding and border, expanding computed bounds only when switched to BoxSizing.ContentBox (1)

  8. golang样本契约go · linux/x64golang.org/x/sync@v0.22.0

    普遍认为singleflight.Group.DoChan returns a shared broadcast channel that closes after sending, blocks the worker if an abandoned caller stops receiving, and does not deduplicate against synchronous Do.

    实测assert singleflight.Group.DoChan allocates a distinct buffered channel of capacity 1 for each caller so concurrent readers do not compete or consume each other's results

  9. pypi样本契约python · linux/x64pytest@9.0.3

    普遍认为pytest.approx(0.0) matches small floating point numbers like 1e-7 using the default 1e-6 relative tolerance

    实测pytest.approx(0.0) compares against zero using exclusively the absolute tolerance (defaulting to 1e-12) because relative tolerance scales to zero, causing 1e-7 == approx(0.0) to evaluate to False unless abs is explicitly set

  10. npm样本契约node · linux/x64lodash-es@4.18.1

    普遍认为defaultsDeep returns a new cloned object without mutating the destination and concatenates or overwrites entire arrays when applying nested defaults.

    实测defaultsDeep mutates the destination object in-place and merges array elements index-by-index rather than replacing or concatenating them

  11. golang样本契约go · linux/x64github.com/jackc/pgx/v5@v5.10.0

    普遍认为CollectOneRow errors when multiple rows match, empty PostgreSQL ranges scan as Valid=false like SQL NULL, and PostgreSQL infinity timestamps scan into time.Time

    实测CollectOneRow consumes the first row without error on multi-row results whereas CollectExactlyOneRow rejects multiple rows with ErrTooManyRows

  12. golang样本契约go · linux/x64github.com/google/go-cmp@v0.7.0

    普遍认为Standard library error values can be compared directly with cmp.Equal or cmp.Diff like other basic Go types.

    实测Comparing standard error values without cmpopts.EquateErrors panics at runtime because standard errors contain unexported struct fields

  13. npm样本契约node · linux/x64nanoid@6.0.1

    普遍认为Negative size arguments passed to nanoid/non-secure functions are expected to throw a RangeError matching cryptographic nanoid behavior.

    实测nanoid/non-secure functions return an empty string for negative or non-positive sizes rather than throwing RangeError like root nanoid

  14. npm样本契约node · linux/x64fs-extra@11.3.0

    普遍认为fs.move overwrites existing destination files by default like fs.copy and Node's fs.rename, and requires destination parent directories to already exist

    实测fs.move rejects with 'dest already exists.' when destination exists unless overwrite: true is explicitly passed, while fs.copy defaults overwrite to true

  15. pypi样本契约python · linux/x64markupsafe@3.0.3

    普遍认为escape() decodes UTF-8 byte sequences before HTML-escaping them, and str.join() escapes raw strings when concatenating with Markup elements.

    实测escape() converts bytes objects via str() to their literal repr 'b\'...\'' and escapes the resulting quotes rather than decoding UTF-8 bytes, requiring Markup(data, encoding) for explicit byte decoding.

  16. pypi样本契约python · linux/x64structlog@26.1.0

    普遍认为Calling bind_contextvars automatically propagates context variables to all structlog loggers without requiring merge_contextvars in the processor chain.

    实测Calling bind_contextvars has no effect on log output unless merge_contextvars is explicitly present in the processor chain, and bound logger fields override conflicting context variables.

  17. pypi样本契约python · linux/x64packaging@24.2

    普遍认为parse_wheel_filename preserves unnormalized distribution names and parses build tags as plain strings or leaves compressed wheel tags unexpanded

    实测parse_wheel_filename returns a 4-tuple of canonicalized name, parsed Version, integer-prefixed build tag tuple, and Cartesian-product expanded Tag frozenset, rejecting build tags without a leading digit.

  18. golang样本契约go · linux/x64google.golang.org/protobuf@v1.36.12

    普遍认为proto.Merge replaces repeated slice fields with the source list and ignores explicit zero values for optional fields, while reflect.DeepEqual can safely compare protobuf messages.

    实测proto.Merge appends repeated slice elements rather than replacing them, leaves destination scalars untouched when source holds implicit zero values, overwrites destination when source explicitly sets proto3 optional zero values, and recursively merges nested message fields.

  19. pypi样本契约python · linux/x64python-dotenv@1.2.2

    普遍认为A model would expect single quotes to expand escape sequences identically to double quotes, and for inline comments to consistently require or not require preceding whitespace.

    实测dotenv_values expands \n to an actual newline only inside double quotes, and treats # as a comment only if it follows a space (when unquoted) or immediately follows a closing quote.

  20. pypi样本契约python · linux/x64pycparser@2.22

    普遍认为pycparser can automatically skip or handle standard preprocessor directives like #include when parsing C source.

    实测CParser().parse() raises ParseError with 'Directives not supported yet' when given C code containing #include <stdio.h>, rather than successfully ignoring or processing it.

  21. golang样本契约go · linux/x64github.com/lmittmann/tint@v1.2.0

    普遍认为tint formats AddSource as a standard key-value attribute at the end of the log line matching slog.TextHandler conventions.

    实测tint.NewTextHandler formats source code locations directly between the level badge and log message as a faint prefix instead of a trailing key-value pair, and allows complete suppression or replacement via ReplaceAttr

  22. pypi样本契约python · linux/x64markupsafe@3.0.3

    普遍认为Markup.format() treats objects returning str from __html__() as pre-escaped HTML identically to escape() and % interpolation.

    实测Markup.format() escapes plain str returns from __html__() into HTML entities because EscapeFormatter wraps format_field results in escape(), requiring __html__() to return Markup or define __html_format__ for unescaped formatting

  23. cargo样本契约rust · linux/x64rustls@0.23.43

    普遍认为ResolvesServerCertUsingSni accepts wildcard domain patterns or IP literals as registration keys and serves any mapped certificate without validating its Subject Alternative Names against the domain key

    实测rustls ResolvesServerCertUsingSni::add strictly rejects wildcard patterns and IP literals as registration keys and validates that the certified key's SAN matches the registered DNS domain

  24. pypi样本契约python · linux/x64packaging@24.1

    普遍认为a pre-release like 2.1a1 is contained in the range >=2.0 because it evaluates as strictly greater than 2.0

    实测SpecifierSet('>=2.0').contains('2.1a1') returns False rather than True, because pre-releases are silently excluded from version ranges by default under PEP 440.

  25. cargo样本契约rust · linux/x64thiserror@2.0.20

    普遍认为#[error(transparent)] causes Error::source to return the wrapped error as Some(&inner)

    实测Calling Error::source on an error deriving Error with #[error(transparent)] delegates directly to inner.source(), returning None when wrapping a root error and omitting the wrapped type from the error cause chain.

如何核对这里的任何一行

打开样本,读它的 contract,然后运行。contract 就是该样本自己的测试:它在断网的固定容器中运行,那次运行的签名回执才是网络所存储的东西。这里没有一条依赖我们对某个库的理解,只依赖这个库实际做了什么。

有些已发布的样例不在这个页面上。它们的契约通过了,样例也是活的 —— 但契约里没有一行能当句子读。像 expect(x).toBe(1) 这样的断言,放在它所检验的那个认知旁边,对读者什么也没说。与其登出没人能读的证据,不如空着。