-
Notifications
You must be signed in to change notification settings - Fork 51
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
mail/dspam: add SMF support #267
Conversation
Committed, thanks! Feel free to use either repo, this one is perhaps better to use for things that are specific to illumos but it's only me that handles them, whereas the NetBSD repository has more people watching it (me included). |
BTW I did notice that this probably won't work after a reboot - the dspam package uses its own |
Provided by erwinlem in TritonDataCenter#267.
Upstream changes: 1.36 - 19 May 2020 - Fix pod error - Quieten perltidy syntax highlighting errors - Fix up minimum perl version (Dick Franks) (GH-268) - Fix passing full path for cover DB (GH-267) 1.35 - 17 May 2020 - Replace "use vars" with "our" (James Raspass) (GH-255) - Remove tray db file from release - Don't chdir when given a -dir flag (Dave Rolsky) (GH-253) - Manage code references in @inc (Slaven Rezić) (GH-249, GH-250) 1.34 - 16 May 2020 - Minimum supported version is now 5.10.0 (Karen Etheridge) (GH-226) - Support 5.32 by accomodating signauture changes (GH-260)
pkgsrc changes: - Fix a typo in DISTNAME/PKGNAME: it is now go-ffuf (instead of go-fuff) - Only installs bin/ffuf and its README - Reset MAINTAINERship, requested by <nikita> Changes: 1.1.0 ----- - Add unsupported arch/os to goreleaser ignore list (#267) - Release 1.1 (#266) - Fix crash with 3xx requests without location header (#265) - Update random seed logic (#262) - fix file get thing (#226) - Update CONTRIBUTORS.md to add bsysop (#258) - Fixed behavior of wordlist:keyword separator in Windows (#240) - Add Host information to JSON output file (#223) - Support outputting all file formats concurrently (#218) - Increase default rows per page on html report (#217) - Add the wordlists to the header information (#211) - Fix error with missing usage info (#195) - Feature178 (#186) - Fix for #193 (#194) - Fix for issue #179 (#180) - Prepare for 1.1.0-git (#176)
0.2.4 Features -Highlight search query matches -Add Similar tracks feature in context menu (#186) -Create new empty playlist via command newplaylist (#272) -Make volume up/down steps configurable via keybinding (#298) -Show dialog when adding duplicate tracks to a playlist (#299) Maintenance -Replace directories with platform_dirs create (#285) (This moves the application folders to ~/.config/ncspot and ~/.cache/ncspot on macOS) -Fix: handle overlapping texts when displaying longer titles/album names -Make album column for tracks configurable (album_column) (fixes #267) -Fix: update playlist changes in local store (fixes #302) -Many third-party dependency updates
# processx 3.4.5 * New options in `pty_options` to set the initial size of the pseudo terminal. * Reading the standard output or error now does not crash occasionally when a `\n` character is at the beginning of the input buffer (#281). # processx 3.4.4 * processx now works correctly for non-ASCII commands and arguments passed in the native encoding, on Windows (#261, #262, #263, #264). * Providing multiple environment variables now works on windows (#267). # processx 3.4.3 * The supervisor (activated with `supervise = TRUE`) does not crash on the Windows Subsystem on Linux (WSL) now (#222). * Fix ABI compatibility for pre and post R 4.0.1 versions. Now CRAN builds (with R 4.0.2 and later 4.0.x) work well on R 4.0.0. * Now processx can run commands on UNC paths specified with forward slashes: `//hostname/...` UNC paths with the usual back-slashes were always fine (#249). * The `$as_ps_handle()` method works now better; previously it sometimes created an invalid `ps::ps_handle` object, if the system clock has changed (#258). # processx 3.4.2 * `run()` now does a better job with displaying the spinner on terminals that buffer the output (#223). * Error messages are now fully printed after an error. In non-interactive sessions, the stack trace is printed as well. * Further improved error messages. Errors from C code now include the name of the C function, and errors that belong to a process include the system command (#197). * processx does not crash now if the process receives a SIGPIPE signal when trying to write to a pipe, of which the other end has already exited. * processx now to works better with fork clusters from the parallel package. See 'Mixing processx and the parallel base R package' in the README file (#236). * processx now does no block SIGCHLD by default in the subprocess, blocking potentially causes zombie sub-subprocesses (#240). * The `process$wait()` method now does not leak file descriptors on Unix when interrupted (#141).
Changelog: 0.62 po4a tool: * Improve po_paths on misconfigurations, improve doc and error messages. Asciidoc: * Unwrap all paragraphs by default (Github's #242). Introduce "forcewrap" option to re-enable line wrapping on output. * Support definition list continuations with indent (Github's #273) DocBook: * Mark xreflabel attributes as translatable (GitHub's #267). Documentation: * Fix some typos, thanks mestaritonttu. Translations: * Updated: Croatian, thanks Milo Ivir. * Updated: Chinese (simplified), thanks taotieren. * Updated: Dutch, thanks Frans Spiesschaert. * Updated: French, thanks jmichault and Jean-Baptiste Holcroft. * Updated: German, thanks Helge Kreutzmann. * Updated: Hungarian, thanks Balázs Úr. * Updated: Italian, thanks Marco Ciampa. * Updated: Norwegian Bokmål, thanks Allan Nordhøy and Petter Reinholdtsen. * Updated: Portuguese, thanks Silvério Santos. * Updated: Portuguese (Brazil), thanks Rafael Fontenelle. * Updated: Russian, thanks Yuriy Balyuk and Artem. * Updated: Serbian (cyrillic), thanks Ivan Pesic. * Updated: Spanish, thanks Vladimir Támara Patiño and Emma Peel. * Updated: Ukrainian, thanks Yuri Chornoivan (українська). Status of the binary translation: 13 languages = 100%: de, es, fr, hr, hu, it, nb, nl, pt, pt_BR, sr_Cyrl, uk, zh_CN. 1 language >= 90%: ru (91%). 11 languages >= 50%: cs (61%), da (62%), eo (59%), et (66%), eu (60%), id (61%), ja (66%), pl (66%), sl (59%), sv (64%), vi (66%). 1 language >= 33%: ca (48%). 5 starting languages: af (7%), ar (14%), kn (7%), ko (19%), zh_HK (3%). Status of the documentation translation: 4 languages = 100%: de, fr, pt_BR, uk. 4 languages >= 95%: nl (99%), pt (99%), sr_Cyrl (99%), zh_CHS (99%). 1 language >= 80%: es (80%). 2 languages >= 70%: ja (73%), pl (73%). 2 languages >= 50%: it (64%), ru (61%). 1 language >= 33%: ca (47%). 4 starting languages: eo (2%), hr (0%), hu (0%), nb (1%). ======================================================================= 0.61 po4a tool: * Robustify --srcdir and --destdir: When building the schroot package, these paths happen to be soft links to the same directory, making po4a believe that the POT file is specified twice (to the same value). po4a is now ignoring these dups (GitHub's #258). Translations: * Updated: Chinese, thanks taotieren. * Updated: Czech, thanks to Michal Čihař. * Updated: Dutch, thanks Frans Spiesschaert. * Updated: French, thanks Jean-Baptiste and Martin Quinson. * Updated: German, thanks Helge Kreutzmann. * Updated: Portuguese, thanks Silvério Santos. * Updated: Portuguese (Brazil), thanks Rafael Fontenelle. * Updated: Serbian (cyrillic), thanks Ivan Pesic. * Updated: Ukrainian, thanks Yuri Chornoivan (українська). Status of the binary translation: 3 languages = 100%: fr, pt_BR, uk. 6 languages >= 95%: de (98%), hr (98%), it (96%), nl (98%), sr_Cyrl (98%), zh_CN (98%). 2 languages >= 80%: hu (89%), ru (88%). 3 languages >= 70%: es (77%), nb (71%), pt (79%). 11 languages >= 50%: cs (62%), da (62%), eo (60%), et (67%), eu (61%), id (62%), ja (67%), pl (67%), sl (60%), sv (65%), vi (67%). 1 language >= 33%: ca (49%). 1 language >= 20%: ko (20%). 4 starting languages: af (8%), ar (14%), kn (8%), zh_HK (3%). Status of the documentation translation: 3 languages = 100%: de, pt_BR, uk. 1 language >= 95%: nl (99%). 1 language >= 90%: pt (92%). 1 language >= 80%: fr (87%). 3 languages >= 70%: es (78%), ja (74%), pl (73%). 3 languages >= 50%: it (52%), ru (61%), sr_Cyrl (67%). 1 language >= 33%: ca (47%). 1 language >= 20%: zh_CHS (25%). 3 starting languages: hr (0%), hu (0%), nb (1%).
0.2.13.0 * Add HashMap.compose. Thanks Alexandre Esteves. 0.2.12.0 * Add HashMap.isSubmapOf[By] and HashSet.isSubsetOf. Thanks Sven Keidel. (#282) * Expose internal modules. (#283) * Documentation improvements in Data.HashSet, including a beginner-friendly introduction. Thanks Matt Renaud. (#267) * HashMap.alterF: Skip key deletion for absent keys. (#288) * Remove custom unsafeShift{L,R} definitions. (#281) * Various other documentation improvements. 0.2.11.0 * Add HashMap.findWithDefault (soft-deprecates HashMap.lookupDefault). Thanks, Matt Renaud. * Add HashMap.fromListWithKey. Thanks, Josef Svenningsson. * Add more folding functions and use them in Foldable instances. Thanks, David Feuer. * Add HashMap.!?, a flipped version of lookup. Thanks, Matt Renaud. * Add a Bifoldable instance for HashMap. Thanks, Joseph Sible. * Add a HasCallStack constraint to (!). Thanks, Roman Cheplyaka. Bug fixes * Fix a space leak affecting updates on keys with hash collisions. Thanks, Neil Mitchell. (#254) * Get rid of some silly thunks that could be left lying around. (#232). Thanks, David Feuer. Other changes * Speed up the Hashable instances for HashMap and HashSet. Thanks, Edward Amsden. * Remove a dependency cycle hack from the benchmark suite. Thanks, Andrew Martin. * Improve documentation. Thanks, Tristan McLeay, Li-yao Xia, Gareth Smith, Simon Jakobi, Sergey Vinokurov, and likely others.
* Prevent an AttributeError that occurs when a server returns HTTP 3xx but doesn't include a Location header as well. (#267) * Prevent a TypeError crash that may occur when including a username and password in the feed URL. (#276) * Prevent a UnicodeDecodeError crash that may occur when the title element's type attribute exists but is empty. (#277) * Prevent a UnicodeEncodeError crash that may occur if the URL contains Unicode characters in the path. (#273) * Fix an issue with the HTTP request status on Python >= 3.9. Updating during the freeze for the bugfixes.
9.01: - Fix library minor version (missing bump to 5.8). 9.00: - Add support for AnyConnect "Session Token Re-use Anchor Protocol" (STRAP) (#410). - Add support for AnyConnect "external browser" SSO mode (!354). - On Windows, fix crash on tunnel setup. (#370, 6a2ffbb) - Bugfix RSA SecurID token decryption and PIN entry forms, broken in v8.20. (#388, !344) - Support Cisco's multiple-certificate authentication (!194). - Append internal=no to GlobalProtect authentication/configuration forms, for compatibility with servers which apparently require this to function properly. (#246, !337) - Revert GlobalProtect default route handling change from v8.20. (!367) - Support split-exclude routes for Fortinet. (#394, !345) - Add openconnect_set_useragent() function. - Add webview callback and SAML/SSO support for AnyConnect, GlobalProtect. (!126). 8.20: - When the queue length (-Q option) is 16 or more, try using vhost-net to accelerate tun device access. - Use epoll() where available. - Support non-AEAD ciphersuites in DTLSv1.2 with AnyConnect. (#249) - Make tncc-emulate.py work with Python 3.7+. (#152, !120) - Emulated a newer version of GlobalProtect official clients, 5.1.5-8; was 4.0.2-19 (!131) - Support Juniper login forms containing both password and 2FA token (!121) - Explicitly disable 3DES and RC4, unless enabled with --allow-insecure-crypto (!114) - Add obsolete-server-crypto test (!114) - Allow protocols to delay tunnel setup and shutdown (!117) - Support for GlobalProtect IPv6 (!155 and !188; previous work in d6db0ec) - SIGUSR1 causes OpenConnect to log detailed connection information and statistics (!154) - Allow --servercert to be specified multiple times in order to accept server certificates matching more than one possible fingerprint (!162, #25) - Add insecure debugging build mode for developers (!112) - Demangle default routes sent as split routes by GlobalProtect (!118) - Improve GlobalProtect login argument decoding (!143) - Add detection of authentication expiration date, intended to allow front-ends to cache and reuse authentication cookies/sessions (!156) - Small bug fixes and clarification of many logging messages. - Support more Juniper login forms, including some SSO forms (!171) - Automatically build Windows installers for OpenConnect command-line interface (!176) - Restore compatibility with newer Cisco servers, by no longer sending them the X-AnyConnect-Platform header (#101, !175) - Add support for PPP-based protocols, currently over TLS only (!165). - Add support for two PPP-based protocols, F5 with --protocol=f5 and Fortinet with --protocol=fortinet (!169). - Add experimental support for Wintun Layer 3 TUN driver under Windows (#231, !178). - Clean up and improve Windows routing/DNS configuration script (vpnc-scripts!26, vpnc-scripts!41, vpnc-scripts!44). - On Windows, reclaim needed IP addresses from down network interfaces so that configuration script can succeed (!178). - Fix output redirection under Windows (#229) - More gracefully handle idle timeouts and other fatal errors for Juniper and Pulse (!187) - Ignore failures to fetch the Juniper/oNCP landing page if the authentication was successful (3e779436). - Add support for Array Networks SSL VPN (#102) - Support TLSv1.3 with TPMv2 EC and RSA keys, add test cases for swtpm and hardware TPM. (ed80bfac...ee1cd782) - Add openconnect_get_connect_url() to simplify passing correct server information to the connecting openconnect process. (NetworkManager-openconnect #46, #53) - Disable brittle "system policy" enforcement where it cannot be gracefully overridden at user request. (RH#1960763). - Pass "portal cookie" fields from GlobalProtect portal to gateway to avoid repetition of password- or SAML-based login (!199) - With --user, enter username supplied via command-line into all authentication forms, not just the first. (#267, !220). - Fix a subtle bug which has prevented ESP rekey and ESP-to-TLS fallback from working reliably with the Juniper/oNCP protocol since v8.04. (#322, !293). - Fix a bug in csd-wrapper.sh which has prevented it from correctly downloading compressed Trojan binaries since at least v8.00. (!305) - Make Windows socketpair emulation more robust in the face of Windows's ability to break its localhost routes. (#228, #361, !320) - Perform proper disconnect and routes cleanup on Windows when receiving Ctrl+C or Ctrl+Break. (#362, !323) - Improve logging in routing/DNS configuration scripts. (!328, vpnc-scripts!45) - Support modified configuration packet from Pulse 9.1R14 servers (#379, !331)
[0.17.0] - 2022-11-08 Features Add support for nested json syntax, see #217 (@ducaale) Add Support for bearer auth in .netrc, see #267 (@porglezomp) Support forcing ipv4/ipv6, see #276 (@zuisong) Other Allow building xh using native-tls only, see #281 (@jirutka) Warn users when translating --follow + non GET method, see #280 (@jgoday)
Changelog: v1.0.27 -- 24 Apr 2023 ---------------------- Note: This release is not binary compatible with previous releases. It is source compatible. - BookmarkStorage: allow empty bookmark names (as per spec) (fixes #300) - MUCRoom: added send( message, subject, StanzaExtensionList ) (fixes #301) v1.0.26 -- 19 Mar 2023 ---------------------- - MUCRoom: init m_session (fixes #293) - TLSOpenSSL: use system certificates for verification (fixes #292) - ConnectionTCPServer: compilation fix for musl (fixes #291) v1.0.25 -- 16 Mar 2023 ---------------------- - compile fixes for modern compilers - Tag: expose internal NodeList for optional XHTML-IM rendering without external parser; compile with --enable-xhtmlim (fixes #297) - enabled/fixed support for TLS 1.3 v1.0.24 -- 14 Jul 2020 ---------------------- Note: This release is not binary compatible with previous releases. It is source compatible. - Tag: fixed XML namespace for attribute with empty namespace (fixes #278) (than ks to drizt72) - PubSub::Event: add simple ctor (thanks to Daniel Kraft) - PubSub::Manager: fixed subscription error case handling (thanks to Daniel Kraf t) - PubSub: fixed support for instant nodes - RosterManager: fixed behavior if subscription attribute is absent in roster it em v1.0.23 -- 08 Dec 2019 ---------------------- - fixed a memory leak in dns.cpp (thanks to Daniel Kraft) - fixed session management/stream resumption (thanks to Michel Vedrine, François Ferreira-de-Sousa, Frédéric Rossi) - MUCRoom::MUCUser: include reason if set - ClientBase: fix honorThreadID (first noticed by Erik Johansson in 2010) - TLSGnuTLS: disabled TLS 1.3 for now, as there are connection issues with it v1.0.22 -- 04 Jan 2019 ---------------------- - TLSOpenSSLBase: conditionally compile in TLS compression support only if available in OpenSSL (fixes #276) (thanks to Dominyk Tiller) - TLSGNUTLS*Anon: fix GnuTLS test by explicitely requesting ANON key exchange algorithms (fixes #279) (thanks to elexis) - TLSGNUTLSClient: fix server cert validation by adding gnutls_certificate_set_x509_system_trust() (fixes #280) (thanks to elexis) - DNS: fix compilation on OpenBSD sparc64 (fixes #281) (thanks to Anthony Anjbe) - Enable getaddrinfo by default (fixes #282) (thanks to Filip Moc) v1.0.21 -- 12 Jun 2018 ---------------------- - InBandBytestream: error handling corrected - doc fix: CertInfo::date_from/to set correctly when using OpenSSL v1.0.20 -- 26 Feb 2017 ---------------------- Note: This release is not binary compatible with previous releases. It is source compatible. - BytestreamDataHandler: added callback for acknowledged packets - ConnectionTCPClient: compile fix for Win32 (broken in 1.0.19) - ConnectionTCPClient: no-block fix - use ws2_32.lib instead of ws_32.lib on Win32 v1.0.19 -- 21 Feb 2017 ---------------------- Note: This release is not binary compatible with previous releases. It is source compatible. - ConnectionTCPServer: cleanup - lots of compile-time warnings removed - TLSOpenSSL: made it speak TLSv1.1 and 1.2 again (thanks to Nicolas Belouin) - added Client State Indication (XEP-0352) - CertInfo struct: fixed protocol version when using OpenSSL - TLSOpenSSL: fixed compilation with OpenSSL 1.1.0 - Registration: added Resource Constraint error condition (thanks to elexis1987) (#267) - ConnectionTCP: fixed some blocking (thanks to Marco Ciprietti) v1.0.18 -- 10 Nov 2016 ---------------------- - TLSOpenSSL: fixed wildcard certificate support (#262) - Pubsub::Event: fixed potential NULL dereference (#257) - ConnectionTCPServer: fixed listening on local socket - Adhoc: fixed memory leak (thanks to Erik Horemans) - documentation fixes (Adhoc::Plugin, StanzaExtension) - ConnectionTLS: delete old connection in setConnectionImpl() (thanks to Erik Horemans) and clarify this in the documentation - Tag: Android compilation fix (thanks to Erik Horemans) - ConnectionSOCKS5Proxy: improved compatibility (thanks to Erik Horemans) - util: Android compilation fix (thanks to Erik Horemans) - Client, ClientBase: avoid 'from' attribute when doing resource binding (#265) - MUCRoom: allow empty message body if extension is present (#264) (thanks to Tom Quackenbush) - ConnectionBOSH: initialize 'hold' to 1 to improve compatibility (#238) - ConnectionTCPServer: actually accept incoming connections
1.56 2023-05-29 14:56:23-07:00 America/Los_Angeles * Replaced Tradeville.pm with BVB.pm - Issue #269 * Added new TwelveData module * Updated YahooJSON.pm and CurrencyRates/YahooJSON.pm to use https://query2.finance.yahoo.com/v11 - PR #284 * Bourso.pm - Squash anything but numbers and period in quote values. * Renamed MStarUK.pm to MorningstarUK.pm * Added get_features method - PR #260 1.55 2023-05-13 12:22:00-07:00 America/Los_Angeles * Added YahooJSON currency rate module PR #270 * Added TRV => CAD in AlphaVantage.pm. Issue #265 - PR #267 * Quick fix for YahooJSON.pm API * URL Change for MorningstarJP. Issue #261 * Regex fix in FTfunds.pm and changed test cases ftfunds.t. PR #262 1.54 2022-12-26 15:25:02-08:00 America/Los_Angeles * Fix to AEX.pm - Issue #235 - PR #244 * New modules Sinvestor.pm Tradegate.pm and XETRA.pm PR #243 * Updates to TMX.pm (Toronto Stock Exchange) PR #248 and #253 * Reverted API change (PR #230) in CurrencyRates/AlphaVantage.pm PR #249 * Fix to Fondsweb.pm PR #250
Changelog: This release adds a script for bash autocompletion for nsd-control. Also nsd-control can be configured to use unencrypted operation also when compiled without openssl. There is also a systemd service unit example file contributed. The dnstap log service can be contacted over TCP, with the dnstap-ip: ip option. It is also possible to use TLS, with dnstap-tls, it is enabled by default, and can be configured with the dnstap-server-name, dnstap-cert-bundle, dnstap-client-key-file and dnstap-client-cert-file options. The configure option --enable-root-server is obsolete, it is no longer used and defaults to on. In addition, the build file should support multicore build with flex and bison more easily. FEATURES: Merge #263: Add bash autocompletion script for nsd-control. Fix #267: Allow unencrypted local operation of nsd-control. Merge #269 from Fale: Add systemd service unit. Fix #271: DNSTAP over TCP, with dnstap-ip: "127.0.0.1@3333". dnstap over TLS, default enabled. Configured with the options dnstap-tls, dnstap-tls-server-name, dnstap-tls-cert-bundle, dnstap-tls-client-key-file and dnstap-tls-client-cert-file. BUG FIXES: Fix #239: -Wincompatible-pointer-types warning in remote.c. Fix configure for -Wstrict-prototypes. Fix #262: Zone(s) not synchronizing properly via TLS. Fix for #262: More error logging for SSL read failures for zone transfers. Merge #265: Fix C99 compatibility issue. Fix #266: Fix build with --without-ssl. Fix for #267: neater variable definitions. Fix #270: reserved identifier violation. Fix to clean more memory on exit of dnstap collector. Fix dnstap to not check socket path when using IP address. Fix to compile without ssl with dnstap-tls code. Dnstap tls code fixes. Fix include brackets for ssl.h include statements, instead of quotes. Fix static analyzer warning about nsd_event_method initialization. Fix #273: Large TXT record breaks AXFR. Fix ixfr create from adding too many record types. Fix cirrus script for submit to coverity scan to libtoolize the configure script components config.guess and config.sub. Fix readme status badge links. make depend. Fix for build to run flex and bison before compiling code that needs the headers. Fix to remove unused whitespace from acx_nlnetlabs.m4 and config.h. For #279: Note that autoreconf -fi creates the configure script and also the needed auxiliary files, for autoconf 2.69 and 2.71. Fix unused variable warning in unit test, from clang compile. Fix #240: Prefix messages originating from verifier. Fix #275: Drop unnecessary root server checks.
2.6.4 (2023-08-25) * If a task returns an exception value, do not raise it in #wait. (#270) * Minor improvement to test performance. * Test multiple process waits. (#273) * Failing timeout while getting from stdin. (#266) * Fix handling of TimeoutError in io_wait. (#274) * Add test for blocking IO#gets in task. (#267)
[1.0.0] - 2023-11-07 A quick note to any packages. The generated shell completions and man page are now in the gen directory of the repo. They're also included in the pre-built release artifacts on the releases page. Improvements #115 Do not replace symlink with output file (@SimplyDanny) Fixes an issue where a symlink would be replaced with a regular file #124 Fix tests (@Linus789) Removed displaying the file path when passing the --preview flag and fixed how text coloring was handled in tests Breaking #192 Rename --string-mode to --fixed-strings (@CosmicHorrorDev) Renamed -s --string-mode to -f --fixed-strings to better match similar tools -s and --string-mode will still continue to work for backwards compatibility, but are no longer documented #258 Error on $<num><non_num> capture replacement names (@CosmicHorrorDev) Previously when you tried to use a numbered capture group right before some letters in the replacement text (e.g. $1foo) then it would be considered the impossible-to-use 1foo capture. The correct way to pass the numbered capture group in this case would be to surround the number with curly braces like so ${1}foo. The error just detects this case and informs the user of the issue Docs #93 Add note about in-place file modification to --help output (@jchook) #148 Doc: nitpick -- has no special meaning to shells (@hexagonrecursion) #181 Fix man page -f flag help text (@ulope) Fixed copy-pasted text in the man page's -f flag's help text #186 Improve error message for failed replacements (@CosmicHorrorDev) #187 Freshen up README (@CosmicHorrorDev) Added a repology badge to document different installation methods Improved the formatting of the benchmarks #207 Documenting $ escape (@yahkbar) Adds a section in the README that covers that $$ is a literal $ in the replacement text #227 Improve README readability (@vassudanagunta) Various formatting improvements #231 Use clap_mangen and roff to generate manpage (@nc7s) This change ensures the man page contents stay in sync with the CLI automatically, and fixes some broken rendering of the existing manpage #243 Exclude unsupported packages from the repology badge (@CosmicHorrorDev) Pre-built Releases (11295fb) Add ARM target (@chmln) Added the arm-unknown-linux-gnueabihf target to CI and releases #114 Adding aarch64-apple-darwin target (@yahkbar) #143 Fix paths to release binary in "publish" action (@skrattaren) #179 Build Adjustments (@yahkbar) striped release binaries and added the aarch64-ubuntu-linux-musl target #204 Adding armv7-unknown-linux-gnueabihf target (@yahkbar) Added the armv7-unknown-linux-gnueabihf target to the list of targets to build in CI and for each release #205 Resolving broken aarch64-apple-darwin tests (@yahkbar) Switched aarch64-apple-darwin to only try building the executable without running the tests since there seems to be no easy way to test for ARM Apple targets #206 Adding Windows builds back (@yahkbar) Added the x86_64-pc-windows-gnu and x86_64-windows-musl targets back to the list of targets to build in CI and for each release Internal #118 Fix master (@SimplyDanny) Fixes several cross-compilation issues that effected different targets in CI #182 cargo update (@CosmicHorrorDev) Bumps dependencies to their latest compatible versions #183 Switch memmap -> memmap2 (@CosmicHorrorDev) Switches away from an unmaintained crate #184 Add editor config file matching rustfmt config (@CosmicHorrorDev) Adds an .editorconfig file matching the settings listed in the .rustfmt.toml file #185 Fix warnings and clippy lints (@CosmicHorrorDev) #188 Switch atty for is-terminal (@CosmicHorrorDev) Switches away from an unmaintained crate #189 Replace structopt with clap v4 (@CosmicHorrorDev) Switches away from a defacto deprecated crate #190 Change how all shell variants are expressed (@CosmicHorrorDev) Tiny tidying up PR #196 Move generating static assets to a cargo-xtask task (@CosmicHorrorDev) Moves the generation of the man page and shell completions from a build script to a cargo-xtask task #197 Add a release checklist (@CosmicHorrorDev) #209 Dependency updates (@yahkbar) #235 Update generated assets (@CosmicHorrorDev) #236 Tone down dependabot (@CosmicHorrorDev) #245 Update sd to 2021 edition (@CosmicHorrorDev) Updates sd to the Rust 2021 edition #248 Misc Cargo.toml tweaks (@CosmicHorrorDev) Switches to use workspace edition and dependencies where appropriate #249 Resolve CI warnings (@CosmicHorrorDev) Switched from actions-rs actions to dtolnay@rust-toolchain Switched from using ::set-output to $GITHUB_ENV #251 Update dependencies (@CosmicHorrorDev) A lot of sad CI tweaking: #252 Fix build target usage in CI (@CosmicHorrorDev) #253 Improve publishing CI job (@CosmicHorrorDev) #256 More CI tweaks (@CosmicHorrorDev) #257 Fix publish action (@CosmicHorrorDev) #267 Rework the replacements flag (@CosmicHorrorDev) #269 Make modified text blue instead of green (@CosmicHorrorDev) #271 Fix release checklist indentation (@CosmicHorrorDev) #272 Remove outdated release checklist step (@CosmicHorrorDev) #274 Prepare 1.0.0-beta.0 release (@CosmicHorrorDev) #275 Update sd version in lockfile (@CosmicHorrorDev)
Highlights v0.16.0 is a big release with some new features: - CLI now doesn't require a running instance to handle commands (#290) - add file cache support for user's data (liked tracks, saved albums, followed artists, etc) (#306) - add support for opening a Spotify link from clipboard (#307) What's Changed - Add Scoop installation instruction to Readme by @rashil2000 in #263 - Improve lyrics lookup by removing remix & remaster info in query. by @Icelk in #266 - Fix typos by @kianmeng in #267 - fix: missing https for song links by @sjdonado in #269 - map media control Pause and Resume to PlayerRequests by @SebRollen in #272 - Allow shuffling context playback from CLI by @rudiejd in #275 - add explicit tags to track information by @SebRollen in #276 - Clamped progress bars to solve problems with -ve numbers by @whiskyplausible in #274 - Miscellaneous refactor and improvement by @aome510 in #287 - use track's id of linked_from if exists by @aome510 in #286 - Support handling CLI commands without a running application instance by @aome510 in #290 - Allow disabling notify when client is not streaming by @VenMolom in #298 - support disabling notification from config by @aome510 in #303 - bind C-z to AddSelectedItemToQueue by @aome510 in #304 - Cache user's data into files (liked tracks, saved albums, followed artists, etc) by @aome510 in #306 - Support open spotify link by @aome510 in #307
What's Changed - Update Ratatui to 0.25 + Update dependencies by @AmmarAbouZor in #261 - Chore: Bump thiserror from 1.0.51 to 1.0.52 by @dependabot in #263 - Ignore key events of types other than press by @AmmarAbouZor in #267
Hello all! This will likely be the final release of Amfora. For more information, please see my blog post, https://www.makeworld.space/2023/08/bye_gemini.html Thanks to all the users and especially the contributors, who made this project the personal success it was for me. The following is copied from the CHANGELOG.md file in this repo. Added Syntax highlighting for preformatted text blocks with alt text (#252, #263, wiki page) Client certificates can be restricted to certain paths of a host (#115) header config option in [subscriptions] to allow disabling the header text on the subscriptions page (#191) Selected link and scroll position stays for non-cached pages (#122) Keybinding to open URL with URL handler instead of configured proxy (#143) include theme key to import themes from an external file (#154, #290) Support SOCKS5 proxying by setting AMFORA_SOCKS5 environment variable (#155) When bookmarking a page, the first level one heading is suggested as the name (#267, #293) Confirmation prompts for URL schemes in new [url-prompts] config section (#301, #302) Changed Center text automatically, removing left_margin from the config (#233) max_width defaults to 80 columns instead of 100 (#233) Tabs have the domain of the current page instead of numbers (#202) Closing Amfora with q was removed in favor of Shift-q (#243) Paging up or down scrolls by 50% instead of 75%, to match less (#303) Update deps, require Go 1.17 (#336) Show local directory index file if available (#319) Updated Project Gemini URLs (#342) Fixed Modal can't be closed when opening non-gemini text URLs from the commandline (#283, #284) External programs started by Amfora remain as zombie processes (#219) Prevent link lines (and other types) from being wider than the max_width setting (#280) new:7 on new tab page fails to open link (#306) Slashes aren't decoded in redirect URLs (#322, #324) Typing localhost in the bottom bar actually loads localhost instead of searching (#326, #327)
3.3.8 (2024-05-16) * Land #267, Add more LSA functions; add OpenPolicy and QueryInfoPolicy LSARPC implementations.
Changelog for rest-server 0.13.0 (2024-07-26) ============================================ The following sections list the changes in rest-server 0.13.0 relevant to users. The changes are ordered by importance. Summary ------- * Chg #267: Update dependencies and require Go 1.18 or newer * Chg #273: Shut down cleanly on TERM and INT signals * Enh #271: Print listening address after start-up * Enh #272: Support listening on a unix socket Details ------- * Change #267: Update dependencies and require Go 1.18 or newer Most dependencies have been updated. Since some libraries require newer language features, support for Go 1.17 has been dropped, which means that rest-server now requires at least Go 1.18 to build. restic/rest-server#267 * Change #273: Shut down cleanly on TERM and INT signals Rest-server now listens for TERM and INT signals and cleanly closes down the http.Server and listener when receiving either of them. This is particularly useful when listening on a unix socket, as the server will now remove the socket file when it shuts down. restic/rest-server#273 * Enhancement #271: Print listening address after start-up When started with `--listen :0`, rest-server would print `start server on :0` The message now also includes the actual address listened on, for example `start server on 0.0.0.0:37333`. This is useful when starting a server with an auto-allocated free port number (port 0). restic/rest-server#271 * Enhancement #272: Support listening on a unix socket It is now possible to make rest-server listen on a unix socket by prefixing the socket filename with `unix:` and passing it to the `--listen` option, for example `--listen unix:/tmp/foo`. This is useful in combination with remote port forwarding to enable a remote server to backup locally, e.g.: ``` rest-server --listen unix:/tmp/foo & ssh -R /tmp/foo:/tmp/foo user@host restic -r rest:http+unix:///tmp/foo:/repo backup ``` restic/rest-server#272 Changelog for rest-server 0.12.1 (2023-07-09) ============================================ The following sections list the changes in rest-server 0.12.1 relevant to users. The changes are ordered by importance. Summary ------- * Fix #230: Fix erroneous warnings about unsupported fsync * Fix #238: API: Return empty array when listing empty folders * Enh #217: Log to stdout using the `--log -` option Details ------- * Bugfix #230: Fix erroneous warnings about unsupported fsync Due to a regression in rest-server 0.12.0, it continuously printed `WARNING: fsync is not supported by the data storage. This can lead to data loss, if the system crashes or the storage is unexpectedly disconnected.` for systems that support fsync. We have fixed the warning. restic/rest-server#230 restic/rest-server#231 * Bugfix #238: API: Return empty array when listing empty folders Rest-server returned `null` when listing an empty folder. This has been changed to returning an empty array in accordance with the REST protocol specification. This change has no impact on restic users. restic/rest-server#238 restic/rest-server#239 * Enhancement #217: Log to stdout using the `--log -` option Logging to stdout was possible using `--log /dev/stdout`. However, when the rest server is run as a different user, for example, using `sudo -u restic rest-server [...] --log /dev/stdout` This did not work due to permission issues. For logging to stdout, the `--log` option now supports the special filename `-` which also works in these cases. restic/rest-server#217
0.6.6 - 2024-11-19 Added PR#268 resolved #267 by adding a unicode-ident workaround to compensate for the LICENSE-UNICODE file more closely matching the Unicode-3.0 SPDX identifier rather than the expected Unicode-DFS-2016 one. 0.6.5 - 2024-11-18 Added PR#261 resolved #246 by adding an --offline (as well as --locked and --frozen) option to the generate command. PR#266 resolved #230 by adding a --target option to generate, allowing one to specify one or more targets to filter the dependency graph by, overriding the targets configuration option. Changed PR#262 resolved #258 by using LTO for release builds, slightly decreasing binary sizes. Fixed PR#263 resolved #238 by adding the native-certs feature to use the native certificate store. This feature is not enabled by default as it is only required for corporate environments that man in the middle network traffic. PR#265 resolved #198 by detecting if the parent process is powershell and exiting with an error if cargo-about's output is being redirected instead of using the -o option, as powershell is terrible and doesn't use utf-8 encoding by default. PR#266 resolved #222 by adding some additional documentation on https://clearlydefined.io.
Fixes Fixed show/hide for "Added" column not being properly saved (#219, #267). Fixed some crashes related to starting Spotify client (#251, #252). Fixed search not loading results properly (#268). Fixed showing "0 tracks" in album context menu for non-cached albums until loaded. Fixed showing empty invalid playlists in the list of playlists. Fixed layout breaking on long status messages. Fixed sometimes showing a failed status for successful actions. Changes Track and artist can now be clicked in now playing preview (#253). Added option to like albums from context menu (#255). Improved performance when loading artist albums. Added support for setting custom window and tray icon titles. Reworked "New Releases" to fetch everything as albums. Improved performance when loading album tracks. Removed support for saving passwords, as it's no longer supported. Removed optional libsecrets dependency. Added support for new OAuth authentication. Now requires librespot v0.5.0 or newer. Removed deprecated "Audio features". Improved performance when loading playlists. Now shows "Open/Close" in tray icon when "Close to tray" is enabled. Improved error messages from Spotify client. No longer shows "Related" artists when not available.
# bslib 0.8.0 ## Breaking changes * To help reduce the potential for squashed content, the main content area of `page_sidebar()` and `page_navbar()` with a `sidebar` now have a (customizable) minimum height and width on a "medium-sized" window. To revert to previous behavior, set `theme = bs_theme("bslib-page-main-min-height" = "unset", "bslib-page-main-min-width" = "unset")`. (#1057, #1059, #1084) * `card_image()` had a couple breaking changes (#1076): * `fill` now defaults to `FALSE` to avoid stretching/shrinking the image vertically (and thus, changing it's aspect ratio). To restore the previous behavior, set `fill = TRUE`. * `container` now defaults to `NULL` instead of `card_body`. As a result, `card_image()` no longer has padding around it, making it easier to create "full-bleed" card images ([for example](https://getbootstrap.com/docs/5.3/components/card/#images)). To restore the previous behavior, wrap `card_image()` in a `card_body()`. ## New features * `card_image()` gains several new features (#1076): * `alt` is now a formal argument and is set to `""` by default. This default value marks images as decorative; please describe the image in the `alt` attribute if it is not decorative. * `border_radius` now defaults to `"auto"` by default, in which case the image's position in the card will automatically determine whether it should receive the `.card-img-top` (first child), `.card-img-bottom` (last child) or `.card-img` (only child). * `file` is designed to accept a path to a local (server-side) file, but now recognizes remote files that start with a protocol prefix, e.g. `https://`, or two slashes, e.g. `//`. Local files are base64-encoded and embedded in the HTML output, while remote files are linked directly. To use a relative path for a file that will be served by the Shiny app, use `src` instead of file, e.g. `card_image(src = "cat.jpg")` where `cat.jpg` is stored in `www/`. * The `open` argument of `sidebar()` now includes the option to place a sidebar that's always open on mobile screens _above the main content_ with `open = list(mobile = "always-above")`. (#1088) ## Improvements * Adjusted the border color of checkbox and radio buttons to match the border color of the input group in `bs_theme(preset="shiny")`. (#1038) * On mobile, the main and sidebar content areas of a `layout_sidebar()` no longer overlap with the sidebar toggle button. (#1084) * bslib now re-exports `htmltools::css()` to make it easier to specify style declarations. (#1086) * Example apps provided with bslib have now moved from `examples` to `examples-shiny` to take advantage of the new `package` argument in `shiny::runExample()` with shiny >= 1.8.1. For example, try `shiny::runExample("build-a-box", package = "bslib")`. (#1049) ## Bug fixes * `toggle_sidebar()` once again correctly closes a sidebar. (@fredericva, #1043) * bslib now avoids re-defining its components when used in a context where they are already available, e.g. in a Quarto dashboard. (#1045) * Improved the appearance of cards with sidebars and headers in the Shiny preset, especially when custom card color themes are used, e.g. with `text-bg-primary` or other Bootstrap utility classes. (#1056) * When `card_body(fillable = FALSE)`, bslib now preserves flow-layout margin bottom settings. (#1073) * Fixed a bug in `layout_sidebar()` that caused a spurious and confusing error message. (#1081) # bslib 0.7.0 This large release includes many improvements and bug fixes for newer UI components like `layout_columns()`, `card()`, and `sidebar()`. In addition, the new `input_task_button()` offers a drop-in replacement for `shiny::actionButton()` (to prevent multiple submissions of the same operation) as well as pairing nicely with the new `shiny::ExtendedTask` for implementing truly non-blocking operations in Shiny. ## New features * Added `input_task_button()`, a replacement for `shiny::actionButton()` that automatically prevents an operation from being submitted multiple times. It does this by, upon click, immediately transitioning to a "Processing..." visual state that does not let the button be clicked again. The button resets to its clickable state automatically after the reactive flush it causes is complete; or, for advanced scenarios, `update_task_button()` can be used to manually control when the button resets. * Both `card()` and `value_box()` now take an `id` argument that, when provided, is used to report the full screen state of the card or value box to the server. For example, when using `card(id = "my_card", full_screen = TRUE)` you can determine if the card is currently in full screen mode by reading the boolean value of `input$my_card_full_screen`. (#1006, #1032) ## Changes & improvements * For `sidebar()`: * The page-level `sidebar` for `page_sidebar()`/`page_navbar()` is now always open (and not collapsible) by default on mobile screens. To revert to the old behavior, set `open = "desktop"` in the `sidebar`. (#943) * `open` now accepts a list with `mobile` and `desktop` values to control the sidebar's initial state on each screen size, choosing from `"open"`, `"closed"`, or `"always"` (for an always-open sidebar that cannot be collapsed). (#943) * The collapse toggle now has a high `z-index` value to ensure it always appears above elements in the main content area. The sidebar overlay also now receives the same high `z-index` on mobile layouts. (#958) * Improved `card(full_screen = TRUE, ...)` accessibility: * Full-screen cards are now supported on mobile devices: the _Expand card_ button is revealed when a user taps on the card (thanks @Damonsoul, #961). * The _Expand card_ button is now accessible via keyboard navigation and appropriate ARIA attributes connect the card with the expand and close buttons. * For JavaScript-oriented users, the expansion/collapse is now accompanied by a custom `bslib.card` event with the full screen state reported in the `event.detail.fullScreen` property. (#959) * Improvements to the default theme (i.e., Shiny preset): * In the default theme, cards now use a slightly smaller shadow and the same shadow style is also now used by popovers. (#998) * Increased spacing between elements. This change is most noticeable in the `layout_columns()` or `layout_column_wrap()` component. In these and other components, you can use `gap` and `padding` arguments to choose your own values, or you can set the `$bslib-spacer` (Sass) or `--bslib-spacer` (CSS) variable. (#998) * For `layout_columns()`: * `col_widths` now sets the `sm` breakpoint by default, rather than the `md` breakpoint. For example, `col_widths = c(12, 6, 6)` is now equivalent to `breakpoints(sm = c(12, 6, 6))` rather than `breakpoints(md = c(12, 6, 6))`. (#1014) * When `col_widths` has a `breakpoints()` at `lg` or wider, it now uses a better default column width for the smaller breakpoints not listed in the `col_widths` value. That said, you can always include `sm` or `md` in your `breakpoints()` definition to have complete control over column widths at those sizes. (#931) * When `row_heights` is a non-`breakpoints()` object, that value is used for the row heights at all breakpoints. Previously, it was used for the row heights from `"sm"` up. (#931) * When an integer value for any breakpoint is provided to `col_widths`, a 12-unit grid is always used. For example, `breakpoints(md = 3, lg = NA)` will pick a best-fitting layout for large screen sizes using the 12-column grid. Previously, the best fit algorithm might adjust the number of columns as a shortcut to an easy solution. That shortcut is only taken when an auto-fit layout is requested for every breakpoint, e.g. `col_widths = breakpoints(md = NA, lg = NA)` or `col_widths = NA`. (#928) * Underlying logic moved from R to Typescript to improve the portability of the component. (#931) * `value_box()`, `layout_columns()` and `layout_column_wrap()` now all have `min_height` and `max_height` arguments. These are useful in filling layouts, like `page_fillable()`, `page_sidebar(fillable = TRUE)` or `page_navbar(fillable = TRUE)`. For example, you can use `layout_columns(min_height = 300, max_height = 500)` to ensure that a set of items (likely arranged in a row of columns) are always between 300 and 500 pixels tall. (#1016) * `page_sidebar()` now places the `title` element in a `.navbar` container that matches the structure of `page_navbar()`. This ensures that the title elements of `page_sidebar()` and `page_navbar()` have consistent appearance. (#998) * `as_fillable_container()`, `as_fill_item()` and `as_fill_carrier()` now always include the htmltools fill CSS dependency. This means that they are no longer usable with the `$addAttr()` `htmltools::tagQuery` method; authors should instead pass elements to the `as_fillable_container()` and `as_fill_*()` functions and use the `css_selector` argument to apply fill options to specific elements. (#946) ## Bug fixes * Fixed an issue where the page might be given a window title of `NA` if the primary `title` argument of a page function, such as `page_sidebar()`, is `NULL` or a suitable window title could not be inferred. (#933) * `card()`s (and `value_box()`s) now correctly exit full screen mode when they are removed from the UI. If you want to update a card without potentially exiting the full-screen mode, update specific parts of the card using `uiOutput()` or `textOutput()`. (#1005) * Fixed a handful of `update_popover()` bugs. (#747, #1017) * `tooltip()` and `popover()` now work as expected when inserted into a navbar/navset via `nav_insert()`. (#1020) * `uiOutput()` and `conditionalPanel()` no longer result in unwanted double padding when their parent container uses `gap` for spacing multiple elements (e.g., `layout_columns()`, `page_fillable()`, etc). (#992, #1031) * `page_navbar()` and `navset_bar()` now validate and transform `padding` and `gap` arguments into appropriate CSS values. (#991) * Fixed an issue where the `xs` breakpoint in a `breakpoints()` object used for `row_heights` in `layout_columns()` would override all other breakpoints. (#1014) # bslib 0.6.2 Increased the version requirement on the `{sass}` package to 0.4.9. As a result, `font_google(local=TRUE)` should no longer fail to download font files. # bslib 0.6.1 ## Bug fixes * Fixed the CSS for the `bslib-page-dashboard` class in the Shiny preset to correctly support `page_sidebar(class = "bslib-page-dashboard")` and `page_navbar(nav_panel(class = "bslib-page-dashboard"))`. (#917) * Fixed a minor bug to allow the themer demo to be run directly, outside of `bs_theme_preview()`. (#918) # bslib 0.6.0 ## Breaking changes * `bs_theme()` now defaults to `preset="shiny"`. This provides an additional set of theming defaults and rules that make it easier to create Shiny apps (in particular, dashboards) that look good out of the box. To revert to the previous behavior, set `bs_theme(preset="bootstrap")`. (#711) * `value_box()` no longer defaults to `theme_color = "primary"`. To restore the previous behavior, please use `theme = "primary"`. In addition to the default style change, the `theme_color` is now deprecated in favor of `theme`. (#758) * `page_navbar()` now defaults to `underline = TRUE`, meaning that navigation links in the navbar now have underline styling by default (set `underline = FALSE` to revert to previous behavior). (#784) * `page()` now returns a `<body>` tag instead of `tagList()`. This change allows `page()` to treat named arguments as HTML attributes for the `<body>` tag, making it possible to add page-level classes or other attributes. (#809) * The JS/CSS assets behind `{bslib}` components (e.g., `card()`, `value_box()`, etc) are all now bundled into one `htmlDependency()` and included with the return value of `bs_theme_dependencies()` (previously they were attached at the component-level). (#810) * `layout_column_wrap()` no longer requires `width` and `width` is no longer the first argument, meaning that `width` must be named if used. The new default is `width = "200px"`, which combines with `fixed_width = FALSE` to produce a responsive layout where each column is at least 200px wide. This means that, in most cases, `layout_column_wrap()` can automatically layout an unknown number of items without you having to set `width`. (#853) ## New features * The default version of Bootstrap is now v5.3.1, upgraded from v5.2.2. The most notable thing that comes with the update is the ability to toggle between light/dark [color modes](https://getbootstrap.com/docs/5.3/customize/color-modes/) purely client-side (i.e., no calls to Sass required). (#749, #764) * Added `input_dark_mode()`, a new input control that provides a toggle button that can be used to switch between the dark and light modes when using Bootstrap 5.3. By default, dark mode is applied automatically if the user's operating system is also in dark mode. App authors can toggle dark mode programmatically from the server using `toggle_dark_mode()`, and if you provide `input_dark_mode()` with an `id`, you can read the current color mode via the corresponding input value. (#787) * Shiny's Bootstrap theme preset is now used by default in `bs_theme()` and all related `page_*()` functions in bslib. This theme brings a fresh new design to all Shiny apps and dashboards created with bslib. This dashboard design anticipates heavy use of cards for organizing content, and works best with a gray background for contrast with minimalistic white cards. This treatment can be enabled in `page_sidebar()`, `page_fillable()` and other `page_*()` functions by adding the `bslib-page-dashboard` class to the page container or body tag. The preset can also be customized using the `$bslib-dashboard-design` and `$bslib-enable-shadows` Sass variables. Set these to `false` to disable the dashboard treatment and card shadows, respectively. These variables can be set via `bs_theme()`, e.g. `bs_theme("bslib-dashboard-design" = "false")`. (#897, #906) * `value_box()` has been updated with a number of new features and improvements: * `value_box()` now supports many new themes and styles, or fully customizable themes using the new `value_box_theme()` function. To reflect the new capabilities, we've replaced `theme_color` with a new `theme` argument. The previous argument will continue work as expected, but with a deprecation warning. (#758) In addition to the Bootstrap theme names (`primary` ,`secondary`, etc.), you can now use the main Boostrap colors (`purple`, `blue`, `red`, etc.). You can also choose to apply the color to the background or foreground by prepending a `bg-` or `text-` prefix to the theme or color name. Finally, we've also added new gradient themes allowing you to pair any two color names as `bg-gradient-{from}-{to}` (e.g., `bg-gradient-purple-blue`). These named color themes aren't limited to value boxes: because they're powered by small utility classes, you can use them anywhere within your bslib-powered UI. * Added `showcase_bottom()`, a new `value_box()` layout that places the showcase below the value box title and value, perfect for a full-bleed plot. (#758) * `showcase_left_center()` and `showcase_top_right()` no longer take two values for the `width` argument. Instead, they now take a single value (e.g., `width = "30%"`) representing the width of the showcase are in the value box. Furthermore, they've both gained `width_full_screen` arguments that determine the width of the showcase area when the value box is expanded to fill the screen. (#758) * The `showcase_layout` argument of `value_box()` now accepts one of three character values: `"left center"`, `"top right"`, `"bottom"`. (#758) * A new [Build a Box app](https://bslib.shinyapps.io/build-a-box/) is now available online or via bslib. See `?value_box()` for details. The app helps preview a set of value boxes while you configure and customize their appearance and provides you with code to copy and paste into your app. (#790) * Added new `navset_underline()` & `navset_card_underline()` functions as well as a `underline` argument to `page_navbar()` to leverage the new [nav-underline](https://getbootstrap.com/docs/5.3/components/navs-tabs/#underline) styling on navigation links. (#784) ## Improvements * The `bs_themer()` app now supports previewing the dark mode variant of Bootstrap 5 themes. (#767) * Improved the style and appearance of the button to enter full screen in `card()`s and `value_box()`es to better adapt to Bootstrap's dark mode. (#780) * `htmltools::save_html()` now works as expected when applied directly to components (e.g., `card()`, etc) and pages with a non-default theme. (#823, #815) * `layout_sidebar()` received a new design. The button to collapse and expand the sidebar now appears at the top (instead of the bottom) of the sidebar. On mobile devices, the sidebar now fills the `layout_sidebar()` area as an overlay, rather than expanding from above the main content area. **Note** the `max_mobile_height` argument of `sidebar()` determines the maximum height of the sidebar area on mobile, but it now only applies when `open = "always"`. (#798) * `layout_sidebar()` now uses an `<aside>` element for the sidebar's container and a `<header>` element for the sidebar title. The classes of each element remain the same, but the semantic meaning of the elements is now better reflected in the HTML markup. (#580) * In `layout_column_wrap()`, when `width` is a CSS unit -- e.g. `width = "400px"` or `width = "25%"` -- and `fixed_width = FALSE`, `layout_column_wrap()` will ensure that the columns are at least `width` wide, unless the parent container is narrower than `width`. (#851) * `bs_global_theme()` gains a `preset` argument to match the function signature of `bs_theme()`. (#896) ## Bug fixes * `toggle_switch()` now works correctly when called from within a Shiny module. `update_switch()` worked as expected, but `toggle_switch()` didn't apply the module's namespace to the `id` of the switch to be updated. (#769) * Filter controls in the popovers of `DT::datatable()` tables now better match the current Bootstrap theme and are responsive to the dark mode setting in Bootstrap 5.3. (#267, #775). * A double border no longer appears when an accordion is used inside a `sidebar(open="always")` context. (#795) * `layout_sidebar()` no longer gives the sidebar main content area the `role="main"` attribute. (#580) # bslib 0.5.1 ## New features * Added `tooltip()`, `update_tooltip()`, and `toggle_tooltip()` for easy creation (and server-side updating) of [Bootstrap tooltips](https://getbootstrap.com/docs/5.2/components/tooltips/) (a way to display additional information when focusing (or hovering over) a UI element). (#662) * Added `popover()`, `update_popover()`, and `toggle_popover()` for easy creation (and server-side updating) of [Bootstrap popovers](https://getbootstrap.com/docs/5.2/components/popovers/). Popovers are similar to tooltips, but are more persistent, and should primarily be used with button-like UI elements (e.g., `actionButton()`, `bsicons::bs_icon()`, etc). (#702) * Added `input_switch()` and `update_switch()` for easy creation (and server-side updating) of a [Bootstrap's switch input](https://getbootstrap.com/docs/5.2/forms/checks-radios/#switches) (an on-off toggle for binary input values). (#483) * Added two new toggle functions: `toggle_switch()` for toggling the state of an `input_switch()` element and `toggle_sidebar()` for toggling the state of a `sidebar()` element (`sidebar_toggle()` remains as an alias of `toggle_sidebar()`). (#709) ## Improvements * Closed quarto-dev/quarto-cli#6081: `{bslib}`'s components (e.g., `card()`, `sidebar()`, etc.) now work more sensibly in Quarto docs. (#664) * Closed #672: `sidebar()` gains `gap` and `padding` arguments to control the vertical gap between items in the sidebar and the padding around the sidebar's content. (#725) ## Bug fixes * Closed #636: Outputs in sidebars now work as expected when an initially-closed sidebar is opened. (#624) * Closed #640: `accordion()` no longer errors when an `id` isn't supplied inside a Shiny `session` context. (#646) * Closed #639: `nav_panel()`'s `icon` argument now supports generic `HTML()`, meaning that things like `bsicons::bs_icon()` and `fontawesome::fa()` can be used as values. (#645) * Light-styled buttons in bslib-provided Bootswatch themes are now consistent with their design in Bootswatch. Previously, they were inadvertently styled similarly to secondary buttons. (#687) * Closed #727: `layout_column_wrap()` now enforces equal column widths by avoiding layout issues caused by grid container overflow. (#729) # bslib 0.5.0 This significant release focuses on making dashboards with filling/responsive layouts easier. See the new [Getting Started with Dashboards article](https://rstudio.github.io/bslib/articles/dashboards.html) to learn more. It also includes new components (`accordion()`) as well as many improvements and bug fixes for existing features and components. `{bslib}`'s dashboarding features are still experimental at this point, but this release represents a significant step towards being our recommended way to create Shiny dashboards. ## Breaking changes / improvements * `card_body()` now provides the same behavior as `card_body_fill()` (i.e., it is both a fillable container and fill item) by default. And, now, since `card_body()` can do everything `card_body_fill()` can do, `card_body_fill()` has been deprecated. The main benefit of this change is that `card(full_screen = TRUE, ...)` with output(s) passed to `...` "just works" in an intuitive way. To revert to the previous behavior, set `fillable = FALSE` and `fill = FALSE` in calls to `card_body()` and set `wrapper = function(x) card_body(x, fillable = FALSE, fill = FALSE)` in calls to `card()`. (#498) * Closed #375: `margin-top` is no longer included on header tags that aren't created via pandoc. If this negatively impacts spacing above headers, consider adding a suitable [utility class](https://rstudio.github.io/bslib/articles/utility-classes.html) (for example, change `shiny::titlePanel("My title")` to `tagAppendAttributes(titlePanel("My title"), class = "mt-3", .selector = "h2")`). (#396) * `page_fill()` (now called `page_fillable()`) had several breaking changes (listed below) to better accommodate filling layouts. If this breaks existing behavior, consider using `shiny::fillPage(theme = bslib::bs_theme(), ...)` instead of `page_fill()`. * `page_fill()` now produces a `<body>` tag with `display:flex` (instead of `display:block`). * `page_fill()` no longer fills the windows height on mobile (i.e., narrow screens) by default (set `fillable_mobile = TRUE` to restore the old behavior). * `page_fill()` now adds `padding` and `gap` by default, set `padding = 0` and `gap = 0` to restore the old behavior. * `page_navbar()` (and also `shiny::navbarPage()` with `theme = bs_theme()`) had a couple breaking changes: * The container of each page is now `display:flex` (instead of `display:block`). If this breaks existing behavior, set `page_navbar()`'s `fillable` argument to `FALSE`. * `header` and `footer` is no longer wrapped in an additional `shiny::fluidRow()` container. If this breaks existing behavior, consider wrapping the `header` and `footer` value(s) with `shiny::fluidRow()`). (#479) * `layout_column_wrap()`'s `fill` argument now controls whether or not the _layout container_ is allowed to grow/shrink to fit a fillable container (e.g., `page_fillable()`). It also gains a new `fillable` argument for controlling whether _UI elements_ are allowed to fill their row height. This is more consistent with the meaning of `fill` in other functions, like `card()`, `card_body()`, `layout_sidebar()`, etc. (#498) * Defaults for the following Bootstrap 5 Sass variables were changed to `null`: `$accordion-button-active-bg`, `$accordion-button-active-color`, and `$accordion-icon-active-color`. To restore the old behavior, do `bs_add_variables(theme, "accordion-button-active-bg" = "tint-color($component-active-bg, 90%)", "accordion-button-active-color" = "shade-color($primary, 10%)", "accordion-icon-active-color" = "$accordion-button-active-color", .where = "declarations")`. (#475) ## New features * Added `page_sidebar()`, for easy dashboard creation. (#588) * Added a `sidebar()` API for creating sidebar layouts in various contexts. See [the article](https://rstudio.github.io/bslib/articles/sidebars/index.html) to learn more. (#479) * Added `layout_columns()`, for responsive column-based grid layouts. (#587) * Adds a new `accordion()` API. See `help(accordion)` for examples and details. Note also `accordion()` is designed to [work well inside a `sidebar()`](https://rstudio.github.io/bslib/articles/sidebars/index.html#sidebar-accordions). (#475) * `page_navbar()`, `navset_card_tab()`, and ` navset_card_pill()` gain a `sidebar` argument for putting a `sidebar()` on every page/tab/pill. (#479) * `page_navbar()` gains a `fillable` argument to make the content of particular page(s) fit the window/card. (#479) * `page_fillable()` (aka, `page_fill()`) is now considered a `fillable` container, meaning that `fill` items like `card()`, `layout_column_wrap()`, and `layout_sidebar()` now grow/shrink to fit the window's height when they appear as a direct child of `page_fillable()`. (#479) * `page_navbar()` and `page_fillable()` gain `fillable_mobile` arguments to control whether the page should grow/shrink to fit the viewport on mobile. (#479) * `card()`, `value_box()`, and `card_image()` gain `max_height`/`min_height` and `fill` arguments. (#498) * `card_body()` gains a `padding` argument. (#587) * Added new `as_fill()`, `as_fillable()`, `as_fill_carrier()`, `is_fill()`, and `is_fillable()` for testing and coercing potential to fill. (#498) ## Bug fixes * Closed #558: nested cards with `fullscreen = TRUE` now correctly and individually expand to fill the window. Tab focus behavior while in full screen mode has also been improved. (#557) * Closed #573: Improved styling when a dynamic result is supplied to `value_box()`'s `title`/`value` (e.g., `value_box("Dynamic value", uiOutput("value"))`). (#605) ## Deprecations * `card_body_fill()` has been deprecated in favor of `card_body()`. (#498) * `page_fill()` has been deprecated in favor of `page_fillable()`. (#498) * `nav()` has been deprecated in favor of `nav_panel()` and `nav_content()` in favor of `nav_panel_hidden()`. (#476) * The `navs_*()` family of functions have been deprecated in favor of `navset_*()` (#476): * `navs_tab()` is now `navset_tab()` * `navs_pill()` is now `navset_pill()` * `navs_pill_list()` is now `navset_pill_list()` * `navs_bar()` is now `navset_bar()` * `navs_tab_card()` and `navs_pill_card()` are now `navset_card_tab()` and `navset_card_pill()`, respectively.
I added a manifest file to enable SMF support. Is this done correctly? I only tested under SmartOS.
Should I make the pull requests for the Joyent tree or is it better to do it against the NetBSD tree directly? I have some more SMFs I want to add but let's start with this one.