)]}'
{"id":"openstack%2Foslo.versionedobjects~701796","triplet_id":"openstack%2Foslo.versionedobjects~master~Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b","project":"openstack/oslo.versionedobjects","branch":"master","topic":"better-defaults","hashtags":[],"change_id":"Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b","subject":"Add default_fn\u003d to Field","status":"ABANDONED","created":"2020-01-09 18:15:46.000000000","updated":"2021-04-16 10:48:17.000000000","total_comment_count":2,"unresolved_comment_count":0,"has_review_started":true,"meta_rev_id":"c464fb42aa252f0cca939ccca3705feb90925d02","_number":701796,"virtual_id_number":701796,"owner":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"actions":{},"labels":{"Verified":{"disliked":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"all":[{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"date":"2020-01-15 15:39:57.000000000","_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"tag":"autogenerated:zuul:check","value":-1,"date":"2020-01-10 18:20:58.000000000","permitted_voting_range":{"min":-2,"max":2},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}],"values":{"-2":"Fails","-1":"Doesn\u0027t seem to work"," 0":"No score","+1":"Works for me","+2":"Verified"},"description":"","value":-1,"default_value":0,"optional":true},"Code-Review":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}],"values":{"-2":"Do not merge","-1":"This patch needs further work before it can be merged"," 0":"No score","+1":"Looks good to me, but someone else must approve","+2":"Looks good to me (core reviewer)"},"description":"","default_value":0,"optional":true},"Workflow":{"all":[{"date":"2020-01-15 22:06:44.000000000","_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}],"values":{"-1":"Work in progress"," 0":"Ready for reviews","+1":"Approved"},"description":"","default_value":0,"optional":true},"Backport-Candidate":{"all":[{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"value":0,"permitted_voting_range":{"min":-2,"max":2},"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},{"value":0,"permitted_voting_range":{"min":-1,"max":1},"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"}],"values":{"-2":"Do Not Backport","-1":"Not A Backport Candidate"," 0":"Backport Review Needed","+1":"Proposed Backport","+2":"Should Backport"},"description":"","default_value":0,"optional":true}},"removable_reviewers":[],"reviewers":{"REVIEWER":[{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]}]},"pending_reviewers":{},"reviewer_updates":[{"updated":"2020-01-10 12:23:56.000000000","updated_by":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"reviewer":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"state":"REVIEWER"},{"updated":"2020-01-10 18:20:58.000000000","updated_by":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"reviewer":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"state":"REVIEWER"},{"updated":"2020-01-15 15:39:57.000000000","updated_by":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"reviewer":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"state":"REVIEWER"},{"updated":"2020-01-15 22:06:44.000000000","updated_by":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"reviewer":{"_account_id":14070,"name":"Eric Fried","email":"openstack@fried.cc","username":"efried"},"state":"REVIEWER"}],"messages":[{"id":"e3b1c188f8ce04a72f35813891f99d94b102a139","author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"date":"2020-01-09 18:15:46.000000000","message":"Uploaded patch set 1.","accounts_in_message":[],"_revision_number":1},{"id":"8757ad13cfbec86d2afc67f164454cd81a4fd0d8","author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"date":"2020-01-09 18:47:20.000000000","message":"Uploaded patch set 2.","accounts_in_message":[],"_revision_number":2},{"id":"f4c2e2138c6b771fdea801e29137df6983ad7d68","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-01-09 20:15:30.000000000","message":"Patch Set 2: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/370f113cfdcd42d18ecd54575e3e16ad : FAILURE in 1h 26m 35s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/09347b2d95964f468f933d31a491963e : FAILURE in 1h 01m 08s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/b7de75ed928448c5bfee95f90894b33b : SUCCESS in 4m 53s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/07315a8306234212a9d8023d9f6ac6e3 : SUCCESS in 4m 02s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/92d739330d9d4cd09dea5a5fda94ed7b : SUCCESS in 4m 17s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/60804a28b9dd4b758c839e6b241c65c7 : SUCCESS in 6m 49s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/e92fa6fb28f4467daab50ab67685b904 : SUCCESS in 4m 31s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/6e0c26345f7f42be994fb1d88b0b8dc2 : SUCCESS in 4m 58s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/b448d4e5102542f88693e99fd7744aae : SUCCESS in 6m 14s\n- oslo.versionedobjects-src-grenade-devstack-multinode https://zuul.opendev.org/t/openstack/build/4b54fd1d34a347e8b1080f77fe9d09b3 : FAILURE in 1h 14m 00s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"dafe0d7ee1f220094c4d7c03b0807e2461dcc3ae","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2020-01-10 12:23:56.000000000","message":"Patch Set 2: Code-Review+1\n\n(2 comments)\n\nWhile I have a clear use case for the EphemeralObject feature in the parent class I don\u0027t have a similar immediate need for the default_fn feature in this class. Besides the above, the interface contract and the implementation of the default_fn feature look OK to me.","accounts_in_message":[],"_revision_number":2},{"id":"ca83e843ef78d8b7df9991a8aa71039112ffdaf4","author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"date":"2020-01-10 12:25:20.000000000","message":"Patch Set 2:\n\nrecheck","accounts_in_message":[],"_revision_number":2},{"id":"cf4320d2e5d79e8cd620c40ad477d9d62db413aa","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-01-10 13:59:19.000000000","message":"Patch Set 2:\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/bcfff1e8361247739125af9591b432ba : FAILURE in 1h 28m 58s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/dc6c1e704a36445ebae5f2ea161f1a11 : FAILURE in 1h 08m 38s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/303b42a796e5451f8c8f55a28d5660db : SUCCESS in 4m 08s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/165d809195fc46c1957ed1b4d5edf38e : SUCCESS in 3m 53s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/a2592683d10244fcb5236d6e5fe42540 : SUCCESS in 3m 48s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/3e4226d5e94e407e97d7d97f3afcdcdc : SUCCESS in 3m 41s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/16cf67fe4a3147f59c7f4ff035ee3bc1 : SUCCESS in 3m 45s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/36809b6e194b4e0bb7d9a1e019db38b9 : SUCCESS in 4m 28s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/106a68dc55434d6693d6867f30fc2511 : SUCCESS in 4m 36s\n- oslo.versionedobjects-src-grenade-devstack-multinode https://zuul.opendev.org/t/openstack/build/8947550b36d94419b8beadc0f1afa5f6 : FAILURE in 1h 07m 17s (non-voting)","accounts_in_message":[],"_revision_number":2},{"id":"0f6cbc4f3b711c704a52c7f18ff128f9c4841947","author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"date":"2020-01-10 16:37:36.000000000","message":"Patch Set 2:\n\n\u003e While I have a clear use case for the EphemeralObject feature in\n \u003e the parent class I don\u0027t have a similar immediate need for the\n \u003e default_fn feature in this class. Besides the above, the interface\n \u003e contract and the implementation of the default_fn feature look OK\n \u003e to me.\n\nMaybe I confused the situation a bit by calling it a function, but what I was really going for was allowing for the syntactic sugar of just providing a type as the default_fn, which means \"the default for this field is an empty $object of this type\".\n\nRight now, to do that, we have to provide a whole instance of that type of object, which will be deepcopy\u0027d when the default is set, which is pretty silly. Originally our field types were almost all primitives (integers and the like) and so this behaved pretty much like argument defaults in python. However, we have a lot more objects and complexity these days, so this was an attempt to provide a more flexible interface.\n\nWe do not have to merge this patch if people don\u0027t think it\u0027s worth it.","accounts_in_message":[],"_revision_number":2},{"id":"e7fb84d78dde14a7608e248e949f7e4c367287ca","author":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"date":"2020-01-10 16:41:07.000000000","message":"Uploaded patch set 3.","accounts_in_message":[],"_revision_number":3},{"id":"b0cb254a9750445768f778c9583a8a638389c509","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-01-10 18:20:58.000000000","message":"Patch Set 3: Verified-1\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/22e4efc881dc4e54a53f2d8c0abebf03 : FAILURE in 1h 36m 13s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/7613d1ed40f64ad985e3d824c4a7d9f5 : FAILURE in 1h 06m 13s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/cf778f5cbaa544fdb9f16734e0185d6b : SUCCESS in 5m 02s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/9be5efb4d57d40729794589ae03c9323 : SUCCESS in 3m 42s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/384b107c42834e578e7023807d56da7b : SUCCESS in 4m 16s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/3537465eff9e49c3a195577437717c02 : SUCCESS in 4m 08s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/84156ceca2f34916a8a3ef337df3f02d : SUCCESS in 4m 28s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/165ba8f6ceeb4097b7cdf32d6ab1a650 : SUCCESS in 4m 04s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/90dfb038fcbe49958aa5c4f493204135 : SUCCESS in 5m 53s\n- oslo.versionedobjects-src-grenade-devstack-multinode https://zuul.opendev.org/t/openstack/build/7041e16f42d94015a0e5abb01626ceb2 : FAILURE in 1h 10m 42s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"8d4a6f30ff7d0c4c557657496086679b629eba3d","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2020-01-15 15:39:57.000000000","message":"Patch Set 3:\n\nrecheck","accounts_in_message":[],"_revision_number":3},{"id":"ed4c5cea97c22e7ea1527f6ccaa9edaf0ff9da07","tag":"autogenerated:zuul:check","author":{"_account_id":22348,"name":"Zuul","username":"zuul","tags":["SERVICE_USER"]},"date":"2020-01-15 17:29:27.000000000","message":"Patch Set 3:\n\nBuild failed (check pipeline).  For information on how to proceed, see\nhttp://docs.openstack.org/infra/manual/developers.html#automated-testing\n\n\n- tempest-full https://zuul.opendev.org/t/openstack/build/2d36fb3dfe5d4b23a3867ede1b5997e0 : FAILURE in 1h 43m 59s\n- tempest-full-py3 https://zuul.opendev.org/t/openstack/build/1dbeebd866544d57ac6b17404c7cd560 : FAILURE in 1h 27m 36s\n- openstack-tox-lower-constraints https://zuul.opendev.org/t/openstack/build/2f3ca3a1a9c041debb3cffe50a562163 : SUCCESS in 5m 21s\n- openstack-tox-pep8 https://zuul.opendev.org/t/openstack/build/8b96536051b64555aeaed3065b59fb27 : SUCCESS in 4m 11s\n- openstack-tox-py27 https://zuul.opendev.org/t/openstack/build/b8f1fb864ae841cd86cd250e670c4b48 : SUCCESS in 3m 10s\n- openstack-tox-py36 https://zuul.opendev.org/t/openstack/build/4ef86112d60242e0924a8d040d1d4bca : SUCCESS in 5m 11s\n- openstack-tox-py37 https://zuul.opendev.org/t/openstack/build/a1e508479669479097d37e20cb58d057 : SUCCESS in 5m 39s\n- openstack-tox-docs https://zuul.opendev.org/t/openstack/build/3de0824532264f2c930fb0e68c44f26e : SUCCESS in 3m 50s\n- build-openstack-releasenotes https://zuul.opendev.org/t/openstack/build/82f6168fb6334a70942567074e5f065f : SUCCESS in 5m 15s\n- oslo.versionedobjects-src-grenade-devstack-multinode https://zuul.opendev.org/t/openstack/build/f8fd6cd023f84c8db81591cfb42c5cd2 : FAILURE in 1h 10m 56s (non-voting)","accounts_in_message":[],"_revision_number":3},{"id":"c464fb42aa252f0cca939ccca3705feb90925d02","tag":"autogenerated:gerrit:abandon","author":{"_account_id":15334,"name":"Stephen Finucane","display_name":"stephenfin","email":"stephenfin@redhat.com","username":"sfinucan"},"date":"2021-04-16 10:48:17.000000000","message":"Abandoned\n\nThere hasn\u0027t been an update on this in some time. I think it\u0027s safe to say this can be abandoned. Please let us know if you want to pick this up again","accounts_in_message":[],"_revision_number":3}],"current_revision_number":3,"current_revision":"d6ac2daf057c8fa6ef018bc64f31214eaf95a2ce","revisions":{"f1a8a474d44fd806cf7781ef4116ffd6c3acf99e":{"kind":"REWORK","_number":1,"created":"2020-01-09 18:15:46.000000000","uploader":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"ref":"refs/changes/96/701796/1","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/96/701796/1","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/1 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/1 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/1 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/1"}}},"commit":{"parents":[{"commit":"f0de5ab0a29d08a35040d5f6c3f449f9b31110ec","subject":"Add EphemeralObject mix-in class for sane field defaulting","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f0de5ab0a29d08a35040d5f6c3f449f9b31110ec"}]}],"author":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-09 19:03:28.000000000","tz":-480},"committer":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-09 19:03:28.000000000","tz":-480},"subject":"Add default_fn\u003d to Field","message":"Add default_fn\u003d to Field\n\nThis adds a new mechanism for providing defaults for fields, which takes\na function instead of a value. To retain compatibility with existing code,\nthis does not attempt to make handling of default\u003d magical to determine\nif the default is callable. Because classes are callable, this also allows\nfor defaulting a value to a class, including another object.\n\nChange-Id: Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f1a8a474d44fd806cf7781ef4116ffd6c3acf99e"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f1a8a474d44fd806cf7781ef4116ffd6c3acf99e"}]},"branch":"refs/heads/master"},"2c22318911e5aee4134846d4db36d32427ab8671":{"kind":"REWORK","_number":2,"created":"2020-01-09 18:47:20.000000000","uploader":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"ref":"refs/changes/96/701796/2","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/96/701796/2","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/2 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/2 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/2 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/2"}}},"commit":{"parents":[{"commit":"f0de5ab0a29d08a35040d5f6c3f449f9b31110ec","subject":"Add EphemeralObject mix-in class for sane field defaulting","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/f0de5ab0a29d08a35040d5f6c3f449f9b31110ec"}]}],"author":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-09 19:03:28.000000000","tz":-480},"committer":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-09 19:37:05.000000000","tz":-480},"subject":"Add default_fn\u003d to Field","message":"Add default_fn\u003d to Field\n\nThis adds a new mechanism for providing defaults for fields, which takes\na function instead of a value. To retain compatibility with existing code,\nthis does not attempt to make handling of default\u003d magical to determine\nif the default is callable. Because classes are callable, this also allows\nfor defaulting a value to a class, including another object.\n\nChange-Id: Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/2c22318911e5aee4134846d4db36d32427ab8671"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/2c22318911e5aee4134846d4db36d32427ab8671"}]},"branch":"refs/heads/master"},"d6ac2daf057c8fa6ef018bc64f31214eaf95a2ce":{"kind":"REWORK","_number":3,"created":"2020-01-10 16:41:07.000000000","uploader":{"_account_id":4393,"name":"Dan Smith","email":"dms@danplanet.com","username":"danms"},"ref":"refs/changes/96/701796/3","fetch":{"anonymous http":{"url":"https://review.opendev.org/openstack/oslo.versionedobjects","ref":"refs/changes/96/701796/3","commands":{"Checkout":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/3 \u0026\u0026 git checkout FETCH_HEAD","Cherry Pick":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/3 \u0026\u0026 git cherry-pick FETCH_HEAD","Format Patch":"git fetch https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/3 \u0026\u0026 git format-patch -1 --stdout FETCH_HEAD","Pull":"git pull https://review.opendev.org/openstack/oslo.versionedobjects refs/changes/96/701796/3"}}},"commit":{"parents":[{"commit":"2bae882a003c0d6b8693332666441c3d8c94c42b","subject":"Add EphemeralObject mix-in class for sane field defaulting","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/2bae882a003c0d6b8693332666441c3d8c94c42b"}]}],"author":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-09 19:03:28.000000000","tz":-480},"committer":{"name":"Dan Smith","email":"dansmith@redhat.com","date":"2020-01-10 16:40:58.000000000","tz":-480},"subject":"Add default_fn\u003d to Field","message":"Add default_fn\u003d to Field\n\nThis adds a new mechanism for providing defaults for fields, which takes\na function instead of a value. To retain compatibility with existing code,\nthis does not attempt to make handling of default\u003d magical to determine\nif the default is callable. Because classes are callable, this also allows\nfor defaulting a value to a class, including another object.\n\nChange-Id: Ie2c20c73cb90ac24877c44ae8c9bb60fa9b5085b\n","web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/d6ac2daf057c8fa6ef018bc64f31214eaf95a2ce"}],"resolve_conflicts_web_links":[{"name":"gitea","tooltip":"Open in GitWeb","url":"https://opendev.org/openstack/oslo.versionedobjects/commit/d6ac2daf057c8fa6ef018bc64f31214eaf95a2ce"}]},"branch":"refs/heads/master"}},"requirements":[],"submit_records":[],"submit_requirements":[]}
