Skip to content

Empty map incorrectly translates to null #1106

Open
@t0yv0

Description

@t0yv0

What happened?

The original issue pulumi/pulumi-aws#2517 (comment) uncovered a problem in the bridge. Under certain circumstances an empty object generated by the upstream provider turns into null on the wire when returned from the bridge, which is unexpected. A preferred form would use {} or {"field": null} possibly to represent this object.

Expected Behavior

Empty objects are represented in a way distinct from null.

Steps to reproduce

pulumi/pulumi-aws#2517 has a full repro. We also have a unit test reproducing the issue available in #1105

Output of pulumi about

CLI          
Version      3.66.0
Go Version   go1.20.3
Go Compiler  gc

Plugins
NAME    VERSION
aws     5.40.0
python  unknown

Host     
OS       darwin
Version  13.1
Arch     x86_64

This project is written in python: executable='/usr/bin/python3' version='3.9.6
'

Current Stack: t0yv0/aws-2517/dev

TYPE                            URN
pulumi:pulumi:Stack             urn:pulumi:dev::aws-2517::pulumi:pulumi:Stack::aws-2517-dev
pulumi:providers:aws            urn:pulumi:dev::aws-2517::pulumi:providers:aws::default_5_40_0
aws:ec2/vpc:Vpc                 urn:pulumi:dev::aws-2517::aws:ec2/vpc:Vpc::main
aws:lb/targetGroup:TargetGroup  urn:pulumi:dev::aws-2517::aws:lb/targetGroup:TargetGroup::test
aws:lb/targetGroup:TargetGroup  urn:pulumi:dev::aws-2517::aws:lb/targetGroup:TargetGroup::foo


Found no pending operations associated with dev

Backend        
Name           pulumi.com
URL            https://app.pulumi.com/t0yv0
User           t0yv0
Organizations  t0yv0, pulumi

Dependencies:
NAME        VERSION
pip         23.1.2
pulumi-aws  5.40.0
setuptools  67.7.2
wheel       0.40.0

Pulumi locates its logs in /var/folders/gk/cchgxh512m72f_dmkcc3d09h0000gp/T/ by default

Additional context

This may be fixed by #887

Contributing

Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Metadata

Metadata

Assignees

No one assigned

    Labels

    bug/diffBugs in computing Diffs and planning resource changeskind/bugSome behavior is incorrect or out of spec

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions