|
9 | 9 | * Both seeded and unseeded initializers will always generate the same values every time they are called (for a given variable shape). For unseeded initializers (`seed=None`), a random seed will be created and assigned at initializer creation (different initializer instances get different seeds). |
10 | 10 | * An unseeded initializer will raise a warning if it is reused (called) multiple times. This is because it would produce the same values each time, which may not be intended. |
11 | 11 |
|
| 12 | + |
| 13 | +## Deprecations |
| 14 | + |
| 15 | +* The C++ `tensorflow::Code` and `tensorflow::Status` will become aliases of respectively `absl::StatusCode` and `absl::Status` in some future release. |
| 16 | + * Use `tensorflow::OkStatus()` instead of `tensorflow::Status::OK()`. |
| 17 | + * Stop constructing `Status` objects from `tensorflow::error::Code`. |
| 18 | + * One MUST NOT access `tensorflow::errors::Code` fields. Accessing `tensorflow::error::Code` fields is fine. |
| 19 | + * Use the constructors such as `tensorflow::errors:InvalidArgument` to create status using an error code without accessing it. |
| 20 | + * Use the free functions such as `tensorflow::errors::IsInvalidArgument` if needed. |
| 21 | + * In the last resort, use e.g.`static_cast<tensorflow::errors::Code>(error::Code::INVALID_ARGUMENT)` or `static_cast<int>(code)` for comparisons. |
| 22 | +* `tensorflow::StatusOr` will also become in the future alias to `absl::StatusOr`, so use `StatusOr::value` instead of `StatusOr::ConsumeValueOrDie`. |
| 23 | + |
| 24 | + |
12 | 25 | ## Major Features and Improvements |
13 | 26 |
|
14 | 27 | * `tf.lite`: |
|
87 | 100 | * `tf.random` |
88 | 101 | * Added `tf.random.experimental.stateless_shuffle`, a stateless version of `tf.random.shuffle`. |
89 | 102 |
|
90 | | -## Deprecations |
91 | | - |
92 | | -* The C++ `tensorflow::Code` and `tensorflow::Status` will become aliases of respectively `absl::StatusCode` and `absl::Status` in some future release. |
93 | | - * Use `tensorflow::OkStatus()` instead of `tensorflow::Status::OK()`. |
94 | | - * Stop constructing `Status` objects from `tensorflow::error::Code`. |
95 | | - * One MUST NOT access `tensorflow::errors::Code` fields. Accessing `tensorflow::error::Code` fields is fine. |
96 | | - * Use the constructors such as `tensorflow::errors:InvalidArgument` to create status using an error code without accessing it. |
97 | | - * Use the free functions such as `tensorflow::errors::IsInvalidArgument` if needed. |
98 | | - * In the last resort, use e.g.`static_cast<tensorflow::errors::Code>(error::Code::INVALID_ARGUMENT)` or `static_cast<int>(code)` for comparisons. |
99 | | -* `tensorflow::StatusOr` will also become in the future alias to `absl::StatusOr`, so use `StatusOr::value` instead of `StatusOr::ConsumeValueOrDie`. |
100 | | - |
101 | | - |
102 | 103 |
|
103 | 104 | ## Thanks to our Contributors |
104 | 105 |
|
|
0 commit comments