aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKayce Basques <kayce@google.com>2024-01-26 01:31:08 +0000
committerCQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com>2024-01-26 01:31:08 +0000
commit45be7b141b8be70b02b5dff957ec81449956a9ee (patch)
tree1695ccb0a5187daad9c53f9b5fb6e6729a6b340d
parentc1e43cba53c2bb89c55bce64027837ba3e9a0b0e (diff)
downloadpigweed-45be7b141b8be70b02b5dff957ec81449956a9ee.tar.gz
docs: Update changelog
Change-Id: Ifc9176ecc656defa20dfa98773614d1392cfe8d3 Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/189292 Commit-Queue: Auto-Submit <auto-submit@pigweed-service-accounts.iam.gserviceaccount.com> Reviewed-by: Kayce Basques <kayce@google.com> Pigweed-Auto-Submit: Kayce Basques <kayce@google.com> Presubmit-Verified: CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Keir Mierle <keir@google.com>
-rw-r--r--docs/changelog.rst330
-rw-r--r--pw_build/bazel.rst2
-rw-r--r--pw_polyfill/docs.rst2
-rw-r--r--pw_preprocessor/docs.rst2
4 files changed, 333 insertions, 3 deletions
diff --git a/docs/changelog.rst b/docs/changelog.rst
index 76f334bef..e77ecc701 100644
--- a/docs/changelog.rst
+++ b/docs/changelog.rst
@@ -14,10 +14,336 @@ Discuss what's new with the Pigweed team
.. _docs-changelog-latest:
------------
-Jan 12, 2024
+Jan 26, 2024
------------
.. changelog_highlights_start
+Highlights (Jan 12, 2024 to Jan 26, 2024):
+
+* The new :ref:`docs-bazel-integration` guide shows you how to integrate a
+ single Pigweed module into an existing Bazel project.
+* Initial support for :py:class:`pw_cc_feature` has been added, which completes
+ the initial set of rules required for building toolchains with
+ :ref:`module-pw_toolchain_bazel`.
+* A longstanding GCC bug that caused tokenized logging within a function
+ template to not work has been fixed.
+* The new :ref:`module-pw_build-bazel-pw_cc_binary_with_map` Bazel rule enables
+ generating a ``.map`` file when building a binary.
+* The new :cpp:func:`pw::bytes::SignExtend` template enables expanding the nth
+ bit to the left up to the size of the destination type.
+* The new ``pw::kvs::FlashMemory::EndOfWrittenData()`` method returns the first
+ byte of erased flash that has no more written bytes.
+* ``pw_polyfill/static_assert.h`` now provides a C23-style ``static_assert()``.
+ See :ref:`module-pw_polyfill-static_assert`.
+* The new ``PW_ADD_OVERFLOW``, ``PW_SUB_OVERFLOW``, and ``PW_MUL_OVERFLOW``
+ macros can be used to `check for integer overflows
+ <module-pw_preprocessor-integer-overflow>`_.
+* The ``//pw_toolchain_bazel`` directory is now configured to be compiled as a
+ standalone Bazel module.
+* The C++ client for :ref:`module-pw_transfer` now uses handles for
+ cancellation.
+* A link to each module's source code and issues is now auto-generated in the
+ ``pigweed.dev`` site nav.
+
+.. changelog_highlights_end
+
+Active SEEDs
+============
+Help shape the future of Pigweed! Please visit :ref:`seed-0000`
+and leave feedback on the RFCs (i.e. SEEDs) marked
+``Open for Comments``.
+
+Modules
+=======
+
+pw_allocator
+------------
+* `Add SplifFreeListAllocator fuzzer
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/178216>`__
+
+pw_bluetooth
+------------
+* `Add advertising packet content filter emboss definitions
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188314>`__
+* `Add android multiple advertising emboss structures
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188313>`__
+* `Add a2dp remaining offload emboss structures
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188311>`__
+* `Move emboss structures from hci_commands to hci_common
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188312>`__
+* `Reorganize hci_vendor.emb
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188310>`__
+* `Add new event definitions
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188150>`__
+ (issue `#311639432 <https://issues.pigweed.dev/issues/311639432>`__)
+
+pw_build
+--------
+The new :ref:`module-pw_build-bazel-pw_cc_binary_with_map` Bazel rule enables
+you to generate a ``.map`` file when building a binary.
+
+* `Add pw_cc_binary variant to generate .map files
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187710>`__
+ (issue `#319746242 <https://issues.pigweed.dev/issues/319746242>`__)
+
+pw_bytes
+--------
+The :cpp:class:`pw::ByteBuilder` API reference is now being auto-generated
+via Doxygen. The new :cpp:func:`pw::bytes::SignExtend` template enables
+expanding the nth bit to the left up to the size of the destination type.
+
+* `Fix compilation error occured with Werror=all
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188890>`__
+* `Update documentation
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188462>`__
+* `SignExtend template
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188456>`__
+ (issue `#321114167 <https://issues.pigweed.dev/issues/321114167>`__)
+* `Make _b literals error on values >255
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188208>`__
+
+pw_compilation_testing
+----------------------
+* `Skip tests excluded by the preprocessor
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188650>`__
+ (issue `#321088147 <https://issues.pigweed.dev/issues/321088147>`__)
+
+pw_console
+----------
+* `Upgrade to ptpython 3.0.25
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188146>`__
+ (issue `#320509105 <https://issues.pigweed.dev/issues/320509105>`__)
+
+pw_containers
+-------------
+The destructors for ``pw::InlineQueue``, ``pw::InlineDeque``, and
+``pw::Vector`` are now protected to prevent use with ``delete`` or
+``std::unique_ptr`` and to prevent unusable declarations.
+
+* `Protected InlineQueue/Deque<T> destructor
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187802>`__
+* `Make Vector<T> destructor protected
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187801>`__
+
+pw_digital_io
+-------------
+The private virtual API requirements for
+:cpp:class:`pw::digital_io::DigitalIoOptional` are now documented because
+they are needed when implementing concrete backends for ``pw_digital_io``.
+
+* `Document the private virtual API requirements
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187669>`__
+* `Remove conditional interrupt disabling requirements
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187668>`__
+
+pw_doctor
+---------
+* `Update expected tools on POSIX
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188102>`__
+ (issue `#315998985 <https://issues.pigweed.dev/issues/315998985>`__)
+
+pw_env_setup
+------------
+* `Retrieve qemu on ARM Macs
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187806>`__
+ (issue `#315998985 <https://issues.pigweed.dev/issues/315998985>`__)
+
+pw_hdlc
+-------
+* `Remove unused targets
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188226>`__
+* `Remove unused rpc packet processor target
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188233>`__
+
+pw_ide
+------
+* `Fix typo
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188423>`__
+* `Launch activated terminals in VSC
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187195>`__
+ (issue `#318583596 <https://issues.pigweed.dev/issues/318583596>`__)
+* `VSC extension 0.1.3 release
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/186726>`__
+
+pw_kvs
+------
+The new ``pw::kvs::FlashMemory::EndOfWrittenData()`` method returns the first
+byte of erased flash that has no more written bytes.
+
+* `Add EndOfWrittenData()
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188872>`__
+
+pw_persistent_ram
+-----------------
+* `Add more tests to PersistentBuffer
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188106>`__
+ (issue `#320538351 <https://issues.pigweed.dev/issues/320538351>`__)
+
+pw_polyfill
+-----------
+``pw_polyfill/static_assert.h`` now provides a C23-style ``static_assert()``.
+See :ref:`module-pw_polyfill-static_assert`.
+
+* `Remove _Static_assert workaround
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188277>`__
+* `Provide static_assert polyfill for C
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188137>`__
+
+pw_preprocessor
+---------------
+The new ``PW_ADD_OVERFLOW``, ``PW_SUB_OVERFLOW``, and ``PW_MUL_OVERFLOW``
+macros can be used to `check for integer overflows
+<module-pw_preprocessor-integer-overflow>`_.
+
+* `Add integer-overflow macros
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187653>`__
+
+pw_presubmit
+------------
+* `Add more info to todo summary
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188750>`__
+* `Trim paths in ninja summary
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188070>`__
+* `No copyright for MODULE.bazel.lock
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188170>`__
+* `Exclude docs on Mac ARM hosts
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187784>`__
+ (issue `#315998985 <https://issues.pigweed.dev/issues/315998985>`__)
+
+pw_protobuf
+-----------
+* `Fix another &*nullptr in test
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188717>`__
+* `Fix undefined pointer deref in fuzz test
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188281>`__
+* `Fix out-of-range read
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188095>`__
+ (issue `#314803709 <https://issues.pigweed.dev/issues/314803709>`__)
+
+pw_thread
+---------
+* `Add missing include
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/189212>`__
+
+pw_tokenizer
+------------
+A longstanding GCC bug that caused tokenized logging within a function template
+to not work has been fixed.
+
+* `Compensate for GCC template bug
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188424>`__
+ (issue `#321306079 <https://issues.pigweed.dev/issues/321306079>`__)
+* `Allow use of static_assert in C99 test
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188357>`__
+* `Adjust rustdocs deps to only be in std environments
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188138>`__
+
+pw_tool
+-------
+This incomplete module has been deleted.
+
+* `Delete module
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188919>`__
+
+pw_toolchain_bazel
+------------------
+The ``//pw_toolchain_bazel`` directory is now configured to be compiled as a
+standalone Bazel module. Initial support for :py:class:`pw_cc_feature` has been
+added, which completes the initial set of rules required for building
+toolchains with :ref:`module-pw_toolchain_bazel`.
+
+* `Remove deprecated action names
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188991>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+* `Migrate to type-safe action names
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187896>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+* `Require action labels in providers
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188810>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+* `Define actions names as labels
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187895>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+* `Make the pw_toolchain repository into a bazel module
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187932>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+* `Add pw_cc_feature
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/181755>`__
+ (issue `#309533028 <https://issues.pigweed.dev/issues/309533028>`__)
+* `Set exec_transition_for_inputs to False
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188361>`__
+ (issue `#321268080 <https://issues.pigweed.dev/issues/321268080>`__)
+* `Remove check_deps_provide
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187894>`__
+ (issue `#320177248 <https://issues.pigweed.dev/issues/320177248>`__)
+
+pw_transfer
+-----------
+The C++ client for :ref:`module-pw_transfer` now uses handles for
+cancellation.
+
+* `Remove duplicated Builder call
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188855>`__
+* `Use handles for cancellation in C++ client
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/134290>`__
+ (issue `#272840682 <https://issues.pigweed.dev/issues/272840682>`__)
+
+pw_web
+------
+* `Init. improvements to resize performance
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188050>`__
+ (issue `#320475138 <https://issues.pigweed.dev/issues/320475138>`__)
+
+Build
+=====
+* `Use Python 3.11
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/182191>`__
+ (issue `#310293060 <https://issues.pigweed.dev/issues/310293060>`__)
+* `Use pre-release of rules_python
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188852>`__
+ (issue `#310293060 <https://issues.pigweed.dev/issues/310293060>`__)
+* `Use rules_python in Bazel build files
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188690>`__
+
+Targets
+=======
+
+host_device_simulator
+---------------------
+* `Update docs
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187430>`__
+
+Docs
+====
+* `How to use a single Pigweed module in Bazel
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188922>`__
+* `Add pre-reqs for non-Debian Linux distros
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188770>`__
+ (issue `#320519800 <https://issues.pigweed.dev/issues/320519800>`__)
+* `Auto-generate module source code and issues URLs
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187312>`__
+* `Minor updates to the FAQ
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188252>`__
+* `Update changelog
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/187614>`__
+
+SEEDs
+=====
+* (SEED-0123) `Claim SEED number
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188140>`__
+* (SEED-0124) `Claim SEED number
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188671>`__
+
+Miscellaneous
+=============
+* `Remove module-level README.md files
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188374>`__
+* `Fix how we ignore bazel- directories
+ <https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/188940>`__
+
+------------
+Jan 12, 2024
+------------
Highlights (Dec 29, 2023 to Jan 12, 2024):
* :ref:`docs-changelog-20240112-pw_allocator` added parameter to make it easier
@@ -28,8 +354,6 @@ Highlights (Dec 29, 2023 to Jan 12, 2024):
``std::thread::detach()`` on Windows because it's known to randomly hang
indefinitely.
-.. changelog_highlights_end
-
Active SEEDs
============
Help shape the future of Pigweed! Please visit :ref:`seed-0000`
diff --git a/pw_build/bazel.rst b/pw_build/bazel.rst
index a56be9702..35e689b4e 100644
--- a/pw_build/bazel.rst
+++ b/pw_build/bazel.rst
@@ -329,6 +329,8 @@ Example
} // namespace my::stuff
+.. _module-pw_build-bazel-pw_cc_binary_with_map:
+
pw_cc_binary_with_map
---------------------
The ``pw_cc_binary_with_map`` rule can be used to build a binary like
diff --git a/pw_polyfill/docs.rst b/pw_polyfill/docs.rst
index 49a049a62..00fee3925 100644
--- a/pw_polyfill/docs.rst
+++ b/pw_polyfill/docs.rst
@@ -99,6 +99,8 @@ Backported features
- ``pw_span/span.h``
- ``pw::span``
+.. _module-pw_polyfill-static_assert:
+
------------------------------------------------
Adapt code to compile with different C standards
------------------------------------------------
diff --git a/pw_preprocessor/docs.rst b/pw_preprocessor/docs.rst
index cb8d018b9..3cb4ff847 100644
--- a/pw_preprocessor/docs.rst
+++ b/pw_preprocessor/docs.rst
@@ -264,6 +264,8 @@ a single line if necessary.
Whenever possible, fix the underlying issues about which the compiler is
warning, rather than silencing the diagnostics.
+.. _module-pw_preprocessor-integer-overflow:
+
Integer with Overflow Checking
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
``pw_preprocessor/compiler.h`` provides macros for performing arithmetic