Bump the github-actions group across 1 directory with 2 updates (#760)
Bumps the github-actions group with 2 updates in the / directory: actions/checkout and actions/stale.
Updates
actions/checkoutfrom 4.2.2 to 5.0.0Updates
actions/stalefrom 9.1.0 to 10.0.0
updated-dependencies:
- dependency-name: actions/checkout dependency-version: 5.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions
- dependency-name: actions/stale dependency-version: 10.0.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: github-actions …
Signed-off-by: dependabot[bot] support@github.com Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9
京公网安备 11010802032778号
A set of utility libraries for Dart that makes using many Dart libraries easier and more convenient, or adds additional functionality.
Documentation
API Docs are available.
Main Libraries
quiver.async
Utilities for working with Futures, Streams and async computations.
collectcollects the completion events of anIterableofFutures into aStream.enumerateandconcatrepresentStreamversions of the same-named quiver.iterables methods.StreamBufferallows for the orderly reading of elements from a stream, such as a socket.FutureStreamturns aFuture<Stream>into aStreamwhich emits the same events as the stream returned from the future.StreamRoutersplits a Stream into multiple streams based on a set of predicates.CountdownTimeris a simple countdown timer that fires events in regular increments.Metronomeis a self-correcting alternative toTimer.periodic. It provides a simple, tracking periodic stream ofDateTimeevents with optional anchor time.stringFromByteStreamconstructs a string from a stream of byte lists.quiver.cache
Cacheis a semi-persistent, asynchronously accessed, mapping of keys to values. Caches are similar to Maps, except that the cache implementation might store values in a remote system, so all operations are asynchronous, and caches might have eviction policies.MapCacheis a Cache implementation backed by a Map.quiver.check
checkArgumentthrowsArgumentErrorif the specified argument check expression is false.checkListIndexthrowsRangeErrorif the specified index is out of bounds.checkStatethrowsStateErrorif the specified state check expression is false.quiver.collection
listsEqual,mapsEqualandsetsEqualcheck collections for equality.indexOffinds the first index of an item satisfying a predicate.LruMapis a map that removes the least recently used item when a threshold length is exceeded.Multimapis an associative collection that maps keys to collections of values.BiMapis a bidirectional map and provides an inverse view, allowing lookup of key by value.TreeSetis a balanced binary tree that offers a bidirectional iterator, the ability to iterate from an arbitrary anchor, and ‘nearest’ search.quiver.core
Optionalis a way to represent optional values without allowingnull.hashObjects,hash2,hash3, andhash4generate high-quality hashCodes for a list of objects, or 2, 3, or 4 arguments respectively.quiver.iterables
concat,count,cycle,enumerate,merge,partition,range, andzipcreate, transform, or combine Iterables in different ways, similar to Python’s itertools.min,max, andextentretrieve the minimum and maximum elements from an iterable.GeneratingIterableis an easy way to create lazy iterables that produce elements by calling a function. A common use-case is to traverse properties in an object graph, like the parent relationship in a tree.InfiniteIterableis a base class for Iterables that throws on operations that require a finite length.quiver.pattern
pattern.dart container utilities for work with
Patterns andRegExps.Globimplements glob patterns that are commonly used with filesystem paths.matchesAnycombines multiple Patterns into one, and allows for exclusions.matchesFullreturns true if a Pattern matches an entire String.escapeRegexescapes special regex characters in a String so that it can be used as a literal match inside of a RegExp.quiver.strings
isBlankchecks if a string isnull, empty or made of whitespace characters.isNotBlankchecks if a string is notnull, and not blank.isEmptychecks if a string isnullor empty.isNotEmptychecks if a string is notnulland not empty.equalsIgnoreCasechecks if two strings are equal, ignoring case.compareIgnoreCasecompares two strings, ignoring case.loopallows you to loop through characters in a string starting and ending at arbitrary indices. Out of bounds indices allow you to wrap around the string, supporting a number of use-cases, including:loop('lohel', -3, 2) => 'hello'String‘soperator*, but with better character-level control, e.g.:loop('la ', 0, 8) => 'la la la' // no trailing spaceloop('/path/to/some/file.txt', -3) => 'txt'loop('top', 3, 0) => 'pot'quiver.time
Clockprovides points in time relative to the current point in time, for example: now, 2 days ago, 4 weeks from now, etc. For testability, use Clock rather than other ways of accessing time, likenew DateTime(), so that you can use a fake time function in your tests to control time.Nowis a typedef for functions that return the current time in microseconds, since Clock deals in DateTime which only have millisecond accuracy.aMicrosecond,aMillisecond,aSecond,aMinute,anHour,aDay, andaWeekare unit duration constants to allow writing for example:aDayvs.const Duration(days: 1)aSecond * 30vs.const Duration(seconds: 30)Testing Libraries
The Quiver testing libraries are intended to be used in testing code, not production code. It currently consists of fake implementations of some Quiver interfaces.
quiver.testing.async
FakeAsyncenables testing of units which depend upon timers and microtasks. It supports fake advancements of time and the microtask queue, which cause fake timers and microtasks to be processed. AClockis provided from which to read the current fake time. Faking synchronous or blocking time advancement is also supported.quiver.testing.equality
areEqualityGroupsis a matcher that supports testingoperator==andhashCodeimplementations.quiver.testing.time
FakeStopwatchis a Stopwatch that uses a providednow()function to get the current time.