Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add option to turn off the size=dynamic attributes of lists #401

Closed
wants to merge 1 commit into from

Conversation

hoensr
Copy link

@hoensr hoensr commented Apr 12, 2017

See also this thread
This PR is about an option for suppressing the size="dynamic" attributes of lists in XML.

@hoensr hoensr mentioned this pull request Apr 12, 2017
@AzothAmmo AzothAmmo added this to the v1.2.3 milestone Apr 12, 2017
AzothAmmo added a commit that referenced this pull request May 5, 2017
@AzothAmmo
Copy link
Contributor

I made a few changes to the interface when I merged this. You can now do one of two things for options:

Either specify all of the options using the constructor, e.g.:

cereal::XMLOutputArchive::Options(true, false, ... );

or use the new "named parameter" interface:

cereal::XMLOuputArchive::Options().indent(true).sizeAttributes(false);

I removed an existing static function that returned an Options with a specific set of parameters.

@AzothAmmo AzothAmmo closed this May 5, 2017
headupinclouds added a commit to headupinclouds/cereal that referenced this pull request Aug 15, 2017
commit aa891a4
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Jun 26 13:42:08 2017 -0700

    Resolves USCiLab#414

commit fcef0da
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri May 5 11:37:12 2017 -0700

    Fix shadowing issue for USCiLab#401, recent osx compile issue re: USCiLab#354

commit 950aca4
Merge: ad90557 35a36af
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri May 5 11:09:34 2017 -0700

    Merge branch 'hoensr-xml-no-size-attributes' into develop

commit 35a36af
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri May 5 10:54:25 2017 -0700

    Standardize interface for options (xml)
    see USCiLab#401

commit ad90557
Merge: f031131 2ab15f7
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed May 3 11:39:02 2017 -0700

    Merge branch 'develop' of github.com:USCiLab/cereal into develop

commit f031131
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed May 3 11:38:35 2017 -0700

    modifications for g47 and comment out memory intensive testing

commit c4dcc8d
Merge: 68f56ee 676d329
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed May 3 11:11:08 2017 -0700

    Merge branch 'issue_354' into develop

    still needs more work but this is an improvement for now
    see USCiLab#354

commit 52b03d5
Author: Robin Hoens <robin.hoens@qiagen.com>
Date:   Mon Apr 10 17:13:39 2017 +0200

    Add option to turn off the size=dynamic attributes of lists

commit 2ab15f7
Merge: 68f56ee 7723503
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Tue Apr 11 16:17:51 2017 -0700

    Merge pull request USCiLab#397 from albertziegenhagel/issue_396

    Add remove_reference to determine whether template argument to BinaryData is const

commit 7723503
Author: Albert Ziegenhagel <albert.ziegenhagel@scai.fraunhofer.de>
Date:   Tue Apr 11 10:32:55 2017 +0200

    Add remove_reference to determine whether template argument to BinaryData is const

commit 68f56ee
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Apr 10 11:22:38 2017 -0700

    Remove undefined behavior, see USCiLab#390

commit 676d329
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Feb 22 14:43:31 2017 -0800

    adventures in microoptimization USCiLab#354

commit 546fd9b
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 19 16:25:32 2017 -0800

    tinkering on USCiLab#354

commit 8b8f581
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Feb 15 13:39:42 2017 -0800

    Fix macro for double comparison in unit test
    relates USCiLab#338

commit 51cbda5
Merge: 70c4420 e38d6fe
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 12 14:06:58 2017 -0800

    Merge branch 'develop' for release 1.2.2

commit e38d6fe
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 12 13:46:25 2017 -0800

    fix update doc script

commit 70c4420
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 12 00:25:30 2017 -0800

    Update README.md

    add appveyor badge

commit 2590f21
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sat Feb 11 23:47:00 2017 -0800

    Properly use multimap for lookup in poly casting
    relates USCiLab#356, still need final testing on MSVC

commit a917374
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Feb 8 10:47:02 2017 -0800

    size_type now specified by macro CEREAL_SIZE_TYPE
    resolves USCiLab#379

commit ee17db5
Merge: b827b95 f577fc4
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Feb 6 22:51:29 2017 -0800

    Merge branch 'develop' of github.com:USCiLab/cereal into develop

commit b827b95
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Feb 6 22:50:56 2017 -0800

    Fixes need for special MSVC case, see USCiLab#373

commit f577fc4
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 5 22:13:08 2017 -0800

    Turn on warnings as errors for MSVC, warning level to 3
    Can't do level 4 warnings yet - need to make an upstream change to doctest

commit fb6606d
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Sun Feb 5 18:13:37 2017 -0800

    Do not build coverage or valgrind for MSVC

commit a2d5a15
Merge: 4a92e29 e4d543d
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Jan 27 10:29:51 2017 -0800

    Merge branch 'tusharpm-develop' into develop

    see USCiLab#373

    Still need to address why windows needed a modifcation to polymorphic test to compile

commit e4d543d
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Thu Jan 26 16:53:47 2017 +0530

    Fix merge issues

commit 2261fee
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sun Dec 18 17:32:04 2016 +0530

    Pull requests to not increment build numbers

commit 4ff4db8
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sun Dec 11 20:03:02 2016 +0530

    boost new version

commit 655696a
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sun Dec 11 15:42:00 2016 +0530

    AppVeyor integration

commit df44243
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sun Dec 11 01:01:10 2016 +0530

    Enable cross-platform portability test

    CMake fix 32-bit executable with generator Win64

commit 0a908bc
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sat Dec 10 17:27:28 2016 +0530

    Make tests pass with Windows

commit 4a92e29
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Jan 25 11:04:24 2017 -0800

    no longer need boost test in travis

commit a8e9963
Merge: 75e50ee 1d67d44
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Jan 25 10:56:38 2017 -0800

    Merge branch 'develop_doctest' into develop

    see USCiLab#139

commit 75e50ee
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 13:48:46 2016 -0800

    remove old code from sandbox relates USCiLab#363

commit 507f97d
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 11:53:56 2016 -0800

    add -Wold-style-casts see USCiLab#363

commit f69ad7c
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 11:50:23 2016 -0800

    tab to space

commit d21b0c0
Merge: 29829c1 e63f08f
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 11:47:53 2016 -0800

    Merge branch 'laudrup-master' into develop
    see USCiLab#363

commit e63f08f
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 11:47:24 2016 -0800

    minor adjustments to casts, see comments on USCiLab#363

commit 29829c1
Merge: 9978e0c ad92746
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 10:41:27 2016 -0800

    Merge branch 'FlexCoreLib-doxygen_access_from_extern' into develop

    see USCiLab#365

commit ad92746
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 10:41:02 2016 -0800

    comment out obsolete doxygen

commit 9978e0c
Merge: 1edc5c6 6e71766
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 10:37:17 2016 -0800

    Merge pull request USCiLab#366 from headupinclouds/pr.is_loading.is_saving

    Add is_loading and is_saving values to cereal::{Input,Output}Archive

commit 1edc5c6
Merge: 72d7936 6086234
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Mon Nov 28 10:35:24 2016 -0800

    Merge pull request USCiLab#367 from tusharpm/develop

    Travis configuration updates

commit 6086234
Author: Tushar Maheshwari <tushar27192@gmail.com>
Date:   Sun Nov 27 13:57:26 2016 +0530

    Travis configuration updates
    - Switch to trusty container-based infrastructure for linux systems
    - Add a job to test with clang compiler (skips portability test)
    - Add a job to test on macOS with Xcode8

commit 6e71766
Author: David Hirvonen <dhirvonen@elucideye.com>
Date:   Sat Nov 26 12:31:56 2016 -0500

    Remove spurious character

commit 9376ca6
Author: Kasper Laudrup <laudrup@stacktrace.dk>
Date:   Wed Nov 23 01:34:53 2016 +0100

    Don't use C style casts

    Change C style casts to C++ static casts.

    This makes the code compile with the -Wold-style-cast warning enabled

commit 1d67d44
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Nov 4 16:07:00 2016 -0700

    Removed boost_test as a requirement
    -Now build 32 bit unit tests if portability testing is enabled
    -No more boost+clang issues over std::string abi
    see USCiLab#139, USCiLab#123

commit 66528b6
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Nov 4 15:51:57 2016 -0700

    last? conversions for USCiLab#139

commit 978b3b5
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Nov 4 12:11:51 2016 -0700

    typo fix in comment USCiLab#139

commit 13ae560
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Nov 4 12:10:24 2016 -0700

    more USCiLab#139

commit 07818f4
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Nov 4 12:00:16 2016 -0700

    more USCiLab#139

commit b5e500d
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Nov 2 16:32:35 2016 -0700

    more USCiLab#139

commit a6e59d7
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Nov 2 13:38:33 2016 -0700

    more for USCiLab#139

commit cd46374
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Wed Nov 2 12:20:22 2016 -0700

    more converted for USCiLab#139

commit 38e1548
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Tue Nov 1 11:59:40 2016 -0700

    headers USCiLab#139

commit 15c7339
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Tue Nov 1 11:59:02 2016 -0700

    more conversions USCiLab#139

commit 928cd36
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Tue Nov 1 11:41:28 2016 -0700

    more conversions to CHECK_EQ
    see USCiLab#139

commit 0a262ec
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Tue Nov 1 11:36:22 2016 -0700

    More tests split, switch to CHECk_EQ over CHECK
    see USCiLab#139

commit 671999e
Author: Shane Grant <w.shane.grant@gmail.com>
Date:   Fri Oct 28 14:28:37 2016 -0700

    Initial progress on removing boost test and moving to doctest to better support modules

    relates USCiLab#123

commit a066808
Author: Caspar Kielwein <Caspar@Kielwein.de>
Date:   Sun Oct 2 16:09:04 2016 +0200

    Add cereal.doxytags as tagfile to allow external projects to link to cereal documentation.

commit 3fb59db
Author: Caspar Kielwein <Caspar@Kielwein.de>
Date:   Sun Oct 2 15:53:28 2016 +0200

    Build doxygen documentation with separate CMakeLists.

    Extracted CMakelists.txt to doc subdirectory.
    Changed paths in doxyfile.in and CMakeLists accordingly.
    added doc as subdirectory in main CMakeLists.txt.
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
WSoptics pushed a commit to WSoptics/cereal that referenced this pull request Sep 1, 2017
jrmadsen pushed a commit to jrmadsen/cereal that referenced this pull request Jul 7, 2019
jrmadsen pushed a commit to jrmadsen/cereal that referenced this pull request Jul 7, 2019
jrmadsen pushed a commit to jrmadsen/cereal that referenced this pull request Jul 7, 2019
jrmadsen pushed a commit to jrmadsen/cereal that referenced this pull request Jul 7, 2019
JerryRyan pushed a commit to JerryRyan/cereal that referenced this pull request Jan 6, 2020
JerryRyan pushed a commit to JerryRyan/cereal that referenced this pull request Jan 6, 2020
fryguy503 added a commit to wayfarershaven/server that referenced this pull request Jan 11, 2023
Cereal updated for work being done in another branch. This bump fixes some issues with the library. Tested

v1.3.1

Bug fixes and minor enhancements:
Fix typo in docs by @tankorsmash in Fix typo in docs USCiLab/cereal#597
Add MSVC 2019 to build, default ctor for static object by @AzothAmmo in Add MSVC 2019 to build, default ctor for static object USCiLab/cereal#593
Fix json.hpp compilation issue when int32_t is a long by @bblackham in Fix json.hpp compilation issue when int32_t is a long USCiLab/cereal#621
[cpp20] explicitly capture 'this' as copy by @lukaszgemborowski in [cpp20] explicitly capture 'this' as copy USCiLab/cereal#640
Fix rapidjson for Clang 10 by @groscoe2 in Fix rapidjson for Clang 10 USCiLab/cereal#645
Fixes to prevent clang-diagnostic errors by @johngladp in Fixes to prevent clang-diagnostic errors USCiLab/cereal#643
cleanup cmake files to be a little more moderen by @ClausKlein in cleanup cmake files to be a little more moderen USCiLab/cereal#659
GHSA-wgww-fh2f-c855: Store a copy of each serialized shared_ptr within the archive to prevent the shared_ptr to be freed to early. by @serpedon in CVE-2020-11105: Store a copy of each serialized shared_ptr within the archive to prevent the shared_ptr to be freed to early. USCiLab/cereal#667
add license files for components of cereal by @miartad in add license files for components of cereal USCiLab/cereal#676
Catch short documents in JSON input by @johnkeeping in Catch short documents in JSON input USCiLab/cereal#677
C++17: use inline globals for StaticObjects by @InBetweenNames in C++17: use inline globals for StaticObjects USCiLab/cereal#657
Use std::variant::emplace when loading by @kepler-5 in Use std::variant::emplace when loading USCiLab/cereal#699
Use std::optional::emplace() when loading non-empty optional by @kepler-5 in Use std::optional::emplace() when loading non-empty optional USCiLab/cereal#698
Fix itsNextName not clearing when not found + style change by @AzothAmmo in Fix itsNextName not clearing when not found + style change USCiLab/cereal#715
Update doctest to 2.4.6 + local fixes slated for upstream by @AzothAmmo in Update doctest to 2.4.6 + local fixes slated for upstream USCiLab/cereal#716
Fixed loading of std::vector by @Darred in Fixed loading of std::vector<bool> USCiLab/cereal#732
Update license to match BSD template by @AzothAmmo in Update license to match BSD template USCiLab/cereal#735
Update doctest to 2.4.7 by @AzothAmmo in Update doctest to 2.4.7 USCiLab/cereal#736
Use GNUInstallDirs instead of hard wiring install directories by @antonblanchard in Use GNUInstallDirs instead of hard wiring install directories USCiLab/cereal#710
This is not an exhaustive list of changes or individual contributions. See the closed issues or complete changelog for more information.
v1.3.0

New features include:

Deferred serialization for smart pointers (Stack overflow for large chains of shared_ptr (or smart pointers in general) USCiLab/cereal#185)
Initial support for C++17 standard library variant and optional (thanks to @arximboldi, Add serialization support for C++17 std::optional and std::variant USCiLab/cereal#448)
Support for std::atomic (thanks to @bluescarni, Implementation and testing of std::atomic serialization. USCiLab/cereal#277)
Fixes and enhancements include:

Vastly improved continuous integration testing (Appveyor updates + boost testing fixes USCiLab/cereal#568, Update Travis CI USCiLab/cereal#569)
Fixed several issues related to compilation on newer compilers (Fixing various compilation warnings USCiLab/cereal#579, Add fall through comments to json.hpp USCiLab/cereal#587, Fix warning unused private member itsValueItEnd USCiLab/cereal#515)
Fixed warnings with -Wconversion and -Wdocumentation (thanks to @WSoptics, Develop USCiLab/cereal#423)
Performance improvements for polymorphic serialization (PolymorphicVirtualCaster StaticObject instantiation takes a very long time at app startup USCiLab/cereal#354)
Minor fixes and enhancements include:

Fixed a bug related to CEREAL_REGISTER_DYNAMIC_INIT with shared libraries (thanks to @m2tm, Issue correctly using CEREAL_REGISTER_DYNAMIC_INIT USCiLab/cereal#523)
Avoid unnecessary undefined behavior with StaticObject (thanks to @erichkeane, Change StaticObject instance management to hopefully avoid UBSAN USCiLab/cereal#470)
New version.hpp file describes cereal version (detect cereal version at compile time / version.hpp USCiLab/cereal#444)
Ability to disable size=dynamic attribute in the XML archive (thanks to @hoensr, Add option to turn off the size=dynamic attributes of lists USCiLab/cereal#401)
Other Notes
The static checking for minimal serialization has been relaxed as there were many legitimate cases it was interfering with (thanks to @h-2, remove const check from load_minimal USCiLab/cereal#565)
The vs2013 directory has been removed in favor of generating solutions with CMake (Remove vs2013 directory USCiLab/cereal#574)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants