<div dir="ltr">(I think it is okay.)<div><br></div><div>But here's a chance for me to point out something I heard about in a conversation with Satnam Singh at OOPSLA about how Google works that it seems like would be a nice fit for us. Here's my adaptation to our world: when you push out what some might consider a change that breaks clients (like this one where you also hope to avoid a new package) you are obliged to submit pull requests on all ring-0 packages to (at a min) get all test cases to pass.</div>
<div><br></div><div>I guess you did that here, at least for the ring-0 packages in the racket git repo, which is where the "I found ..." comment comes from?</div><div><br>Robby</div><div class="gmail_extra"><br>
<br><div class="gmail_quote">On Fri, Nov 8, 2013 at 12:35 PM, Matthew Flatt <span dir="ltr"><<a href="mailto:mflatt@cs.utah.edu" target="_blank">mflatt@cs.utah.edu</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Currently, `(define-serializable-struct id ....)` expands to `(provide<br>
deserialize-info:id-v0)`. The `deserialize-info...` identifier needs to<br>
be exported to make things work, but the export is a hassle: the<br>
programmer doesn't care about it, it's not usually documented,<br>
re-exporting modules don't want to re-export it, and so on.<br>
<br>
I'm planning to change `define-serializable-struct` so that the export<br>
is put in a `deserialize-info` submodule, where it should cause less<br>
trouble. This is a slightly backward-incompatible change; I found a<br>
couple of modules that explicitly excluded `deserialize-info...` on<br>
import, and so those exclusions would have to be dropped.<br>
<br>
The change could also be backward-incompatible by changing the protocol<br>
for providers of deserialization other than `define-serializeable-struct`.<br>
That problem is easier to address: `deserialize` can try a<br>
`deserialze-info` submodule first, and if the export isn't found, then<br>
it can try the original module.<br>
<br>
Ok?<br>
<br>
_________________________<br>
Racket Developers list:<br>
<a href="http://lists.racket-lang.org/dev" target="_blank">http://lists.racket-lang.org/dev</a><br>
</blockquote></div><br></div></div>