Pyre

Latest version: v1.12.5

Safety actively analyzes 685838 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

1.11.2

The bulk of the changes in this maintenance release are motivated by the work on the `qed` visualizer: improved bindings for `pyre::grid` to support the flat binary data readers, preliminary support for accessing HDF5 files to support reading NISAR data, and `pyre::viz` enhancements with new color spaces and filters.

Another minor enhancement is the support for opening `journal` logfiles in append mode requested by the `isce3` team.

What's Changed
* Started fleshing out deep support for HDF5 files by aivazis in https://github.com/pyre/pyre/pull/80


**Full Changelog**: https://github.com/pyre/pyre/compare/v1.11.1...v1.11.2

1.11.1

This release contains several minor updates and bug fixes

- primed the `pyre::memory` and `pyre::grid` bindings with a small set of template expansions; the intent was to exercise a strategy for minimizing the manual labor involved in generating the template expansions to bind
- primed `pyre::viz`, the home for a new package with support for building visualization pipelines; the package is still in a primitive state, but it can already do quite a bit; several interesting examples can be found in the `pyre.lib.viz` test suite
- `pyre.http` got a `css` document type that returns the correct context headers; this should quiet down the picky browsers
- extensive updates to the `react` project template: caught up to `react` 17.x, version 6.x of `react-router`, the latest versions of `relay` and `graphene`, updated the overall application layout, and made extensive upgrades to the widgets
- `merlin` got `make`, a new `builder` that generates standalone makefiles; relocated the `flow` builder to make room for its new sibling


**Full Changelog**: https://github.com/pyre/pyre/compare/v1.11.0...v1.11.1

1.11.0

This release marks another step towards pyre 2.0 with a complete makeover of `libjournal`. The C++ library has been reimplemented from scratch, and many features have been added. Some of this work was part of the interim v1.10.0 release; you can find an outline of those changes in the release notes. Since then

- `pyre::journal` has new manipulators that can inject color into the output, associate a user defined code with a message, control the indentation level of subsequent output, and specify the marker to place on the left margin to help identify `journal` output
- the `verbosity` level was renamed to `detail`; the former may be the familiar name historically given to this feature by a multitude of unix tools, but it has been pointed out that it is unnecessarily judgmental. Some backwards compatibility is retained, but the name is now marked deprecated and will be removed in v2.0.
- the `bland` formatter was added; it displays just the injected text with no decoration or message metadata
- there is now a `help` channel that uses the `bland` formatter, intended for building help screens with minimal distractions
- the visual layout of messages generated by the C++ library and the python package had some inconsistencies; these have been fixed, the output is cleaner, and it looks the same regardless of the engine that generated it
- the python bindings provide `report`, a new channel method that renders a sequence of strings; the most interesting aspect of this is that `report` will accept a generator, so output can now be gathered while traversing hierarchical data structures

In other news:

- `pyre.config` now has `yaml` support; configuration files with the `.yaml` suffix are processed using `pyyaml`, if it is available. They are higher priority than the built in `.pfg` files. Please note that the `` character is a comment in `yaml`, so certain `pyre` expressions that use URI syntax and have embedded ``s must be placed in quotation marks
- the configuration cascade in `pyre.components` has improved significantly. Applications can now register a naming service so that components that are created implicitly can get custom names, components get unique ids using `libuuid` that can persist across sessions, and the life cycle event hooks have been streamlined. Protocols have much more say on how their implementers are discovered and instantiated
- `pyre::memory` got `stack`, a new storage strategy that uses `std::array` for storage; it is free of dynamic memory allocations so it is fast, but it is only appropriate for relatively small objects. It is really meant to be used to represent tensors of small rank, but it can be composed as the `cell_t` of a `pyre::grid` to store arbitrarily large tensor fields. More of this in the next release.

Notable housekeeping tasks include

- the move of the CI system to GitHub actions, motivated by the fact that the `pyre` travis bucks ran out. Currently, the new CI system checks both `mm` and `cmake` builds with five different compilers, two versions of python, and three different build targets. It is much more thorough. I am grateful to GitHub and Microsoft for making this possible -- and free.
- the retirement of the `eoan` docker images, as the basis image is no longer available; they were replaced by `hirsute` images. The generation of these images was streamlined a bit, but it still mostly a copy-and-paste job. There must be a better way to generate the `Dockerfile`s...

And finally, `merlin` is coming...

1.10.0

This is another stepping stone towards pyre 2.0, motivated by the merging of the `p2` sandbox (https://github.com/aivazis/p2). Notable changes:

- overhaul of `journal`:
- new `libjournal` implementation
- the bindings are now built using `pybind11`
- new python package that defers to the `C++` library when it is available
- extensive testing of all of the above
- devices and formatters can be attached at any level in the channel name hierarchy, and configuration delegation happens one level at a time all the way up to the global settings
- added a user knob to control how much information to display

- `pyre::timers` with the same level and style of configurability as `journal`

- restructured `pyre::memory` and `pyre::grid`

- reorganized the front end of command line driven apps
- better control over the namespace
- improved sniffing of user extensions
- restructured and improved the default command panels

- modernized support for web based front ends:
- retired the `django` template due to lack of both demand and maintenance
- but added a `react` based template to bootstrap web apps, including support for `graphql` based client/server data exchanges

- major build system improvements for both `cmake` and `mm`

- bug fixing, cosmetics, and improvements to the code narrative

1.9.9

This release contains significant improvements to building and testing `pyre` with all three supported build tools. In addition to the legacy build system, there is now full support for both `mm` and `cmake`.

The new directories under `etc/docker` provide support for building docker images for the `eoan` and `focal` releases of `ubuntu`, for both python 3.7 and 3.8; the code compiles with recent versions of both `gcc` and `clang`.

Support for `travis` was also upgraded. CI is once again enabled on GitHub and all tests pass.

1.9.8

Building with cmake is now more robust

Added workaround for the deprecated `platform.linux_distribution`; pyre now depends on the `distro` package to provide this functionality going forward, until a better solution emerges.

Miscellaneous small fixes.

Heads up: this may be the last release before `pybind11` bindings start showing up in the repository, so prepare... :)

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.