Permalink
Commits on Oct 10, 2012
Commits on Oct 8, 2012
  1. Self-spec refactoring

    alavrik committed Oct 1, 2012
    Fix double inclusion of module piqi in "piqi convert --embed-piqi piqobj.piqi"
    output.
    
    The problem was the recusively included modules maintained a reference to the
    previous (unexpanded) instance of the top-most recursive module.
  2. Self-spec refactoring

    alavrik committed Sep 30, 2012
    Reflect piqi.org -> piqi directory renaming in README
  3. Self-spec refactoring

    alavrik committed Sep 30, 2012
    piqi convert, piqi check: handle mutually-recursive (mutually-included) .piqi
    modules correctly when they are embedded in .piq
    
    For instance, the following command sequence is now working correctly:
    
            piqi convert --embed-piqi piqi.piqi > t.piq
    	piqi convert t.piq
    	piqi check t.piq
  4. (piqi,ocaml,erlang) json-omit-null-fields now works for repeated fiel…

    alavrik committed Sep 29, 2012
    …ds as well
    
    The json-omit-null-fields setting, when true, leads to non-existent repeated
    fields being omitted from JSON output (in addition to missing optinal fields).
    Before this change, they were included and had [] as a value.
  5. Self-spec refactoring

    alavrik committed Sep 29, 2012
    Change default_*() behavior in Erlang and OCaml to not generated user-defined
    default values for optional field, basically leaving those fields undefined.
  6. Self-spec refactoring

    alavrik committed Sep 29, 2012
    Add forgotten handling of wire-type override to piqic_ocaml_default.ml and
    piqic_erlang_default.ml
  7. (piqi) Fix piqi conversion from pb to json

    alavrik committed Sep 23, 2012
    "piqi convert --piqtype piqi -f pb -t json" command was producing empty output.
  8. Self-spec refactoring

    alavrik committed Sep 17, 2012
    Turn .protobuf-wire-type and .protobuf-type alias properties from piqi.piqi to
    extensions in piqi.protobuf.piqi
  9. (piqi) Add a new .protobuf-prefix property for enum

    alavrik committed Sep 17, 2012
    .protobuf-prefix defines a prefix that is automatically added to each enum
    option's name in .proto modules converted from .piqi using "piqi to-proto"
    command.
    
    It helps to deal with the fact that Protobuf-generated enum defintions do not
    form a C++ namespace meaning that enum constants are defined directly in the
    outer namespace; it was announced that this problem will be fixed in
    protobuf-2.5
  10. Self-spec refactoring

    alavrik committed Sep 17, 2012
    - rename proto-name, -custom, -package to protobuf-name, ...
    - rename wire-type to protobuf-wire-type
    - rename wire-packed to protobuf-packed
    - merge piqi.protobuf-wire.piqi into piqi.protobuf.piqi
  11. (piqi) Internal improvements

    alavrik committed Sep 16, 2012
    Rename piqi.org/ top-level directory to piqi/ and fix some minor problems in
    "piqic erlang' and tests.
  12. (piqi) Various changes

    alavrik committed Sep 16, 2012
    - self-spec: rename piqi.proto.piqi to piqi.protobuf.piqi to avoid clashes with
      .proto.piqi suffixes reserved for results of "proto to-piqi" conversions
    - self-spec: remove explicit module name assignment from self-spec modules (i.e.
      .module piqi.org/piqi.*)
    - modules included and imported from modules with scoped names are searched
      within the importing/including module's scope
    - new "piqi expand --add-module-name" that adds .module <name> property if it
      was missing
  13. (piqi) New piqi expand --functions and --all flags

    alavrik committed Sep 13, 2012
    "piqi expand --functions" removes embedded typedefs in function parameters and
    turns them into correspondent top-level defintions instead.
    
    "piqi expand --all" is equivalent "piqi expand --extensions --functions"
    
    "piqi expand" retains the old behavior and is exquivalent to
    "piqi expand --extensions".
    
    Fixed along the way: "piqi expand" didn't generate extended version of embedded
    typedefs in function parameters. If someone decided to extend an such typedef, a
    new extended version of it would never make it back to its original embedded
    location.
  14. Self-spec refactoring

    alavrik committed Sep 10, 2012
    Cosmetic change in piqi.org/piqi.piqi
  15. Self-spec refactoring

    alavrik committed Sep 10, 2012
    Revise Piqi pretty-printing and ast transformation in piqi_pp.ml
  16. Code improvements

    alavrik committed Sep 9, 2012
  17. Self-spec refactoring

    alavrik committed Sep 9, 2012
    Remove ocaml-name and erlang-name from piqi.piqi and put them in standalone
    extension modules: piqic/piqi.ocaml.piqi and piqic/piqi.erlang.piqi
  18. Self-spec refactoring

    alavrik committed Sep 9, 2012
    Define built-in int32-fixed, uint32-fixed, proto-int32 types and their 64-bit
    versions as aliases for int32 and uint32. This way extensions need to only care
    about a small subset of built-in types.
    
    In order to achieve this, we had to implement suport for overriding wire-type in
    lower-level aliases.
  19. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Remove obsolete piqi.piq.piqi property
  20. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Allow nested alias defintions in function parameters. It is mostly needed for
    completeness (alias was the only user-defined type that couldn't be used there),
    but sometimes it can be actually useful. For example, when someone needs to
    specify additional properties in the embedded alias, such as "piq-format".
  21. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Improve comments describing piqi.*.piqi files.
  22. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Rename piqi.wire.piqi to piqi.protobuf.piqi to make it clear what it is for.
  23. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Rename self-spec's any/binobj field to "protobuf" to make it more obvious.
  24. Self-spec refactoring

    alavrik committed Sep 8, 2012
    Completely remove piqi-boot*.piqi and all the ugliness associated with it.
  25. (piqi) Keep unparsed .piqi fields through various transformations

    alavrik committed Sep 7, 2012
    This way, unparsed (i.e. unknown to the current self-specification) fields
    survive through "piqi expand", and most importantly, through the
    compiler-compiler (cc) stage when the self-spec is used to fully encode itself
    from .piqi into Protobuf binary format.