A collection of helpful utilities for use in Dart projects.

Overview

w_common

A collection of helpful utilities for use in Dart projects. Right now, it includes the following:

  • Disposable interface / mixin to assist with cleaning up streams and other data structures that won't necessarily be garbage collected without some manual intervention.
  • A simple typedef that can be parameterized to represent a zero-arity callback that returns a particular type.
  • InvalidationMixin mixin used to mark a class as requiring validation.
  • JsonSerializable interface to indicate that something can be serialized to JSON.
  • A CSS compilation executable that can be run via
    pub run w_common:compile_sass
    
    from the root of your package that depends on w_common.
    • It can also be used as a watcher - great for when you're doing a lot of work on .scss files and don't want to have to remember to keep re-running the script after each change.
      pub run w_common:compile_sass --watch
      
    • Run
      pub run w_common:compile_sass -h
      
      for more usage details / instructions.

We expect this list to grow as we identify small pieces of code that are useful across a wide variety of Dart projects, especially in cases where there is value in projects sharing a single implementation.

Comments
  • MSODP-263 add applyToItem method

    MSODP-263 add applyToItem method

    Description

    Working with consumption in internal application X recently has shown that it would be a helpful for the cache to have a get that works like a map get rather than a cache get. In other words the caching strategy would not be informed of the get and it would not count towards against the removal of the item being referenced from the cache. This can be very useful when one wants to mutate an item that is known to be in the cache.

    Changes

    Added a method to the cache that will run a callback on an item in the cache without doing a get. As a bonus it will ensure that the events will not be put on the didRemove stream until the callback has finished running. To guard against the situation where a consumer chooses to dispose on removal of an object from the cache and applies a long running callback with quite a few awaits. In this circumstance it's possible that the object will be disposed before there callback finishes; which could lead to (in all likelihood benign) exceptions thrown.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [x] Minor
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    Merge Requirements Met type: Feature semver: Minor RM Ready 
    opened by aaronstgeorge-wf 11
  • RAP-1756 Remove Internal Disposable when Disposed Independently

    RAP-1756 Remove Internal Disposable when Disposed Independently

    Description

    If a disposable object is managed but disposed independently of the parent disposable object, a reference to the child disposable is maintained until the parent is disposed. This allows a top level or long living disposable object to hold onto references to otherwise disposed instances longer than necessary.

    Changes

    Watch the managed disposable didDispose events and remove them from the internal collection of things to dispose. This prevents the parent disposable object from maintaining a reference to child object.

    Semantic Versioning

    • [x] Patch
      • [x] This change does not affect the public API
      • [x] This change fixes existing incorrect behavior without any additions
    • [ ] Minor
      • [ ] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf @georgelesica-wf @todbachman-wf @aaronstgeorge-wf

    Merge Requirements Met status: Needs Code Review status: Needs +10 type: Bug semver: Patch 
    opened by bencampbell-wf 11
  • WP-5391 Add

    WP-5391 Add "disposal imminent" step prior to disposal

    Description

    There are 2 issues being addressed here:

    1. The existing logic around awaitable futures (futures registered via awaitBeforeDispose) only waits for the set of futures available when dispose() is called – but ignores additional futures registered between calling dispose() and when all other awaitable futures have completed.
    2. Currently, isDisposing=true as soon as dispose() is called. However, actual disposal doesn't begin until after the awaitable futures complete. This means that the Disposable API is unusable sooner than it needs to be because they check for isDisposingOrDisposed.

    Changes

    • Use a while loop to continuously wait for registered futures until there are no more.
    • Switch to an internal enum to manage the state of the Disposable instance
    • Add a Future<Null> willDispose(); lifecycle hook that can be implemented by extenders of Disposable – this hook gets called as soon as dispose() is called but before disposal actually begins. Potential use cases are to allow instances to cancel pending async tasks, do some cleanup, or kick start some actions that result in awaited futures completing so that disposal can actually occur.
    • Add an "awaiting disposal" state that is entered as soon as dispose() is called. In this state, all of the Disposable APIs are still usable and it is perfectly valid to continue processing async tasks. The "disposing" state is not entered until willDispose() and all futures registered via awaitBeforeDispose() complete.
    • Add an bool isOrWillBeDisposed getter that is true as soon as dispose() is called and remains true forever.
    • Deprecate the other bool getters, as isOrWillBeDisposed should be sufficient for public consumers. All they really need to know is if disposal has been requested.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [ ] Minor
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    Merge Requirements Met type: Improvement semver: Minor RM Ready 
    opened by evanweible-wf 10
  • BREAKING CHANGE - Flux Stores can call dispose with awaitAnimationFrame: true and protect everyone from batched redraw collisions. πŸš“

    BREAKING CHANGE - Flux Stores can call dispose with awaitAnimationFrame: true and protect everyone from batched redraw collisions. πŸš“

    Please apply the appropriate label to your PR:

    • bug / critical
    • improvement / optimization / tech-debt / UX
    • feature

    Description

    Calling dispose on a flux store before its components' batched redraws have finished can cause that pending redraw to attempt to subscribe to a disposed store's onData stream. Exceptions abound. All consumers shouldn't have to know and worry about it.

    Changes

    Allow disposable to optionally wait for the length of an animation frame.

    w_flux Store class would call dispose with awaitAnimationFrame: true. So, the first store to dispose would wait for 17ms, but all internal stores that are looped through would not wait.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [ ] Minor
      • [ ] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [x] Major
      • [x] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @georgelesica-wf @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    opened by tomconnell-wf 10
  • RAP-1500 Extract manage methods into an interface

    RAP-1500 Extract manage methods into an interface

    Description

    We want to be able to expose the helpful manage methods without making a class itself "Disposable".

    Changes

    Extract manage methods into an interface that we then implement in Disposable. Additionally, remove @protected from the manage method implementations. We need this for two reasons. First, because they're not technically part of the interface if they're protected, and second, because we want to be able to use Disposable as a concrete proxy. Finally, make Disposable concrete.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [x] Minor
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf @bencampbell-wf @aaronstgeorge-wf

    Merge Requirements Met 
    opened by georgelesica-wf 10
  • MOBILE-2292: Add JSON deserialization to JsonSerializable

    MOBILE-2292: Add JSON deserialization to JsonSerializable

    Description

    • To do some of the serialization of w_modules there has to be some kind of common serialization logic that classes can implement. Add a deserialization constructor to the existing JsonSerializable abstract class so all consumers of w_common have access to it.

    Changes

    • Added a fromJson named constructor to the JsonSerialization abstract class.
    • Updated unit tests and documentation.

    Semantic Versioning

    This library is still pre-1.0.0.

    Patches and minor changes will be released in a patch version, while breaking changes can be released in a minor version.

    • [x] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Minor
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    Merge Requirements Met 
    opened by brianblanchard-wf 10
  • InvalidationMixin should not error on cancel

    InvalidationMixin should not error on cancel

    Description

    As it was previously written, InvalidationMixin was throwing an error on cancel. This made working with it pretty rough since cancellation is a regular action that is expected to occur.

    Changes

    Instead, switch to completing wether the validation was completed or cancelled. Instead we provide a status so that a consumer who cares can know how the validation completed.

    This also fixes up some bad merges and lint warnings.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
      • [ ] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [x] Minor
      • [x] This change modifies part of the public API in a backwards-incompatible manner
      • [x] This change removes part of the public API

    Testing/QA

    I have actually tried this out in w_table to validate that it can be a drop in replacement for the version that we currently have. That code can be found here: https://github.com/Workiva/w_table/compare/master...dustyholmes-wf:invalidation-mixin?expand=1

    • [x] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    opened by dustyholmes-wf 10
  • AF-1910 fixes for dart 1 and dart 2 compatibility

    AF-1910 fixes for dart 1 and dart 2 compatibility

    Description

    Fixes to allow dart 1 and dart 2 compatibility at the same time.

    Changes

    • CI changes (travis and Dockerfile) to use dartanalyzer and dartfmt directly
    • test on chrome instead of dartium
    • 1 small Type fix
    • some changes for mockito under dart 2

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [x] Minor
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes
    Merge Requirements Met semver: Minor type: Tech-Debt RM Ready 
    opened by robbecker-wf 9
  • RAP-2067 Add event listener helpers to Disposable.

    RAP-2067 Add event listener helpers to Disposable.

    Description

    Currently when consumers call addEventListener, they also have to manually removeEventListener before disposal, or the listeners stay in memory.

    It would be better if consumers could use helper methods on Disposable that will automatically keep track and manage the removal of the listeners upon disposal.

    Changes

    I added helper methods for window, document, and elements to automatically handle the removeEventListener call upon disposal.

    This PR was a great learning opportunity for dependency injection vs. integration testing, so that is why I tested with an integration test for the element method and used a mock class for the window and document methods so as to not mutate any global states while testing.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [x] Minor
      • [x] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [ ] Major
      • [ ] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @dustinlessard-wf @evanweible-wf @jayudey-wf @maxwellpeterson-wf @sebastianmalysa-wf @trentgrover-wf

    Merge Requirements Met type: Improvement semver: Minor status: Needs Code Review status: Needs +10 
    opened by smaifullerton-wk 9
  • CP-3355 Add toJsonString() method to JsonSerializable

    CP-3355 Add toJsonString() method to JsonSerializable

    Description

    Adds a toJsonString() method to JsonSerializable to reduce legwork of consumers working with actual JSON strings. Prevents the needs for consumers to import dart:convert and wrap the object in JSON.encode() calls.

    As I'm making this PR I'm realizing there may be objections to this as it prevents use from being able to easily use this as an interface (via implements) and instead works better with extends or with. If everyone objects, we can close this, but I thought I'd at least put it up for debate/posterity.

    Semantic Versioning

    • [ ] Patch
      • [ ] This change does not affect the public API
      • [ ] This change fixes existing incorrect behavior without any additions
    • [ ] Minor
      • [ ] This change adds something to the public API
      • [ ] This change deprecates a part of the public API
    • [x] Major
      • [x] This change modifies part of the public API in a backwards-incompatible manner
      • [ ] This change removes part of the public API

    Testing/QA

    • [ ] CI passes

    Code Review

    @Workiva/web-platform-pp @Workiva/rich-app-platform-pp

    Merge Requirements Met type: Feature semver: Breaking semver: Major 
    opened by maxwellpeterson-wf 9
  • af_new_drydock_image

    af_new_drydock_image

    Purpose

    The following pull request has been created by App Frameworks to help move consumers to the latest Smithy image. This was done because of an issue with Dartium and Content-Shell that would fail your CIs. Please seethis Wiki Questionfor additional context.

    Changes

    The following changes have been made:

    • All instances of the production Smithy image have been updated to drydock-prod.workiva.net/workiva/smithy-runner-generator:355624.

    Questions

    If you have any questions, please reach out to us in the Support:H5 / Dart Hipchat room

    Merge Requirements Met RM Ready 
    opened by dustinlessard-wf 8
  • [WIP] Null Safety

    [WIP] Null Safety

    Motivation

    Changes

    Release Notes

    Review

    See CONTRIBUTING.md for more details on review types (+1 / QA +1 / +10) and code review process.

    Please review:

    QA Checklist

    • [ ] Tests were updated and provide good coverage of the changeset and other affected code
    • [ ] Manual testing was performed if needed

    Merge Checklist

    While we perform many automated checks before auto-merging, some manual checks are needed:

    • [ ] A Frontend Architecture member has reviewed these changes
    • [ ] There are no unaddressed comments - this check can be automated if reviewers use the "Request Changes" feature
    • [ ] For release PRs - Version metadata in Rosie comment is correct
    Merge Requirements Unmet Skynet 2.0 Failed 
    opened by robbecker-wf 1
  • Flutter 2 migration related to w_transport

    Flutter 2 migration related to w_transport

    Motivation

    Since Flutter 2 has been de facto mandated since its release (by Google upgrading all its core packages and requiring users to do so as well), w_transport should be upgraded to match. However, the nature of dependencies with other Workiva-internal packages is making this quite difficult to do form the outside, so I started to unravel the web of dependencies.

    Changes

    New versions in pubspec file.

    Release Notes

    Upgrade dependencies to match latest published version.

    Review

    See CONTRIBUTING.md for more details on review types (+1 / QA +1 / +10) and code review process.

    Please review:

    QA Checklist

    • [ ] Tests were updated and provide good coverage of the changeset and other affected code
    • [ ] Manual testing was performed if needed

    Merge Checklist

    While we perform many automated checks before auto-merging, some manual checks are needed:

    • [ ] A Client Platform member has reviewed these changes
    • [ ] There are no unaddressed comments - this check can be automated if reviewers use the "Request Changes" feature
    • [ ] For release PRs - Version metadata in Rosie comment is correct

    related Workiva/w_transport#345

    opened by zmeggyesi 1
Releases(2.1.1)
  • 2.1.1(Dec 16, 2022)

    Info

    Build: https://ci.webfilings.com/build/4156862 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/4156862/latest Pipeline: No Pipeline This patch release includes the following changes:

    Miscellaneous

    • [x] #168 FEA-1135: Implement _ObservableTimer.tick
      • FEA-1135 Implement _ObservableTimer.tick
    • [x] #169 RM-167437 Release w_common 2.1.1
      • RM-167437 RELEASE w_common 2.1.1

    Notes created on Friday, December 16 07:35 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 2.1.0(Nov 7, 2022)

    Info

    Build: https://ci.webfilings.com/build/4053548 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/4053548/latest Pipeline: No Pipeline This minor release includes the following changes:

    Miscellaneous

    • [x] #166 Mockito 5

    • [x] #167 RM-149131 Release w_common 2.1.0

      • RM-149131 RELEASE w_common 2.1.0
    • [x] #164 FW-100 Switch skynet from running the unit tests to checking github workflows

      • FW-100 Change skynet in w_common to check that github actions passes

    Notes created on Monday, November 07 10:12 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 2.0.0(Jun 16, 2022)

    Info

    Build: https://ci.webfilings.com/build/3678340 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3678340/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5675870910676992/ This major release includes the following changes:

    Miscellaneous

    • [x] #158 FEA-187: V2
      • FEA-187 v2 of w_common

    Notes created on Thursday, June 16 02:06 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.8(Jun 2, 2022)

    Info

    Build: https://ci.webfilings.com/build/3642476 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3642476/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5066234528530432/ This patch release includes the following changes:

    Miscellaneous

    • [x] #163 Move license files and update READMEs

    Notes created on Thursday, June 02 04:19 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.7(Jun 2, 2022)

    Info

    Build: https://ci.webfilings.com/build/3642279 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3642279/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/4902222813724672/ This patch release includes the following changes:

    Miscellaneous

    • [x] #162 FEA-333: Add w_common_tools package, but do not remove sass tool from w_common (yet)
      • FEA-333 Create w_common_tools package

    Notes created on Thursday, June 02 03:40 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.6(May 25, 2022)

    Info

    Build: https://ci.webfilings.com/build/3626710 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3626710/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5943267320135680/ This patch release includes the following changes:

    Miscellaneous

    • [x] #160 Update references to the archived slack room #support-client-plat

    Notes created on Wednesday, May 25 10:40 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.5(May 24, 2022)

    Info

    Build: https://ci.webfilings.com/build/3623734 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3623734/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6742339140452352/ This patch release includes the following changes:

    Miscellaneous

    • [x] #161 FW-57 Run Unit tests in skynet
      • FW-57 Add skynet config to w_common

    Notes created on Tuesday, May 24 10:09 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.4(May 9, 2022)

    Info

    Build: https://ci.webfilings.com/build/3593957 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3593957/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6453214239784960/ This patch release includes the following changes:

    Miscellaneous

    • [x] #159 Replace deprecated commands with new dart commands

    Notes created on Monday, May 09 10:52 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.3(Mar 10, 2022)

    Info

    Build: https://ci.webfilings.com/build/3460586 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3460586/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6236653285539840/ This patch release includes the following changes:

    Miscellaneous

    • [x] #157 Adjust the dependency range of intl to allow 0.16.x

    Notes created on Thursday, March 10 07:00 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.2(Mar 2, 2022)

    Info

    Build: https://ci.webfilings.com/build/3439602 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3439602/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6024619944050688/ This patch release includes the following changes:

    Miscellaneous

    • [x] #155 Temporarily disable the mockito builder for better build perf

    Notes created on Wednesday, March 02 09:12 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.1(Feb 14, 2022)

    Info

    Build: https://ci.webfilings.com/build/3401068 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3401068/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6542744665980928/ This patch release includes the following changes:

    Miscellaneous

    • [x] #154 Widen acceptable logging version range

    Notes created on Monday, February 14 04:55 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.21.0(Feb 7, 2022)

    Info

    Build: https://ci.webfilings.com/build/3385098 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3385098/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5430137011830784/ This minor release includes the following changes:

    Miscellaneous

    • [x] #153 Export LeakFlag class

    Notes created on Monday, February 07 06:21 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.11(Jan 12, 2022)

    Info

    Build: https://ci.webfilings.com/build/3322822 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3322822/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5623927244849152/ This patch release includes the following changes:

    Miscellaneous

    • [x] #152 Fix wildcard to include branch names with slashes

    Notes created on Wednesday, January 12 04:07 AM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.10(Dec 17, 2021)

    Info

    Build: https://ci.webfilings.com/build/3281769 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3281769/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6564601603555328/ This patch release includes the following changes:

    Miscellaneous

    • [x] #146 Add extensions on Completer to avoid common errors in usage

    Notes created on Friday, December 17 07:33 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.9(Dec 17, 2021)

    Info

    Build: https://ci.webfilings.com/build/3281531 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3281531/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5132798355308544/ This patch release includes the following changes:

    Miscellaneous

    • [x] #151 Allow null args for the manage___ APIs

    Notes created on Friday, December 17 06:57 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.8(Sep 17, 2021)

    Info

    Build: https://ci.webfilings.com/build/3088391 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/3088391/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5325638351978496/ This patch release includes the following changes:

    Miscellaneous

    • [x] #149 Raise the Dart SDK minimum to at least 2.11.0

    Notes created on Friday, September 17 08:30 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.7(May 12, 2021)

    Info

    Build: https://ci.webfilings.com/build/2842049 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/2842049/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6666066500255744/ This patch release includes the following changes:

    Miscellaneous

    • [x] #144 Migrating to Dart 2.12

    Notes created on Wednesday, May 12 04:09 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.6(May 4, 2021)

    Info

    Build: https://ci.webfilings.com/build/2826178 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/2826178/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5792706476113920/ This patch release includes the following changes:

    Miscellaneous

    • [x] #145 DE-679: Delete docs.yml file created for Dev Portal.
      • DE-679 Delete docs.yaml file for Workiva/w_common

    Notes created on Tuesday, May 04 03:17 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.5(Apr 20, 2021)

    Info

    Build: https://ci.webfilings.com/build/2799757 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/2799757/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6336526695530496/ This patch release includes the following changes:

    Miscellaneous

    • [x] #142 Remove deprecated authors field from pubspec.yaml

    Notes created on Tuesday, April 20 03:19 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.4(Apr 1, 2021)

    Info

    Build: https://ci.webfilings.com/build/2770562 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/2770562/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5725712284385280/ This patch release includes the following changes:

    Miscellaneous

    • [x] #141 Widen intl range to allow Dart 2.12 dep resolution

    Notes created on Thursday, April 01 05:54 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.3(Jun 3, 2020)

    Info

    Build: https://ci.webfilings.com/build/2294827 Skynet Results: https://wf-skynet-hrd.appspot.com/apps/test/smithy/2294827/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/4592910237696000/ This patch release includes the following changes:

    New Features and Improvements

    • [x] #137 CPLAT-11312: Widen intl range
      • CPLAT-11312 Widen intl range

    Notes created on Wednesday, June 03 09:28 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.2(Nov 21, 2019)

    Info

    Build: https://ci.webfilings.com/build/2001403 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/2001403/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/6505501716381696/ This patch release includes the following changes:

    Miscellaneous

    • [x] #133 CPLAT-8261: Post-Dart2 cleanup
      • CPLAT-8261 w_common: Post-Dart2 cleanup

    Notes created on Thursday, November 21 10:31 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.1(Aug 12, 2019)

    Info

    Build: https://ci.webfilings.com/build/1857197 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1857197/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5084191094210560/ This patch release includes the following changes:

    Miscellaneous

    • [x] #127 CPLAT-6248: Improve leakflag description
      • CPLAT-6248 Improve leakflag description
    • [x] #128 CPLAT-6796: Add strict inference and raw types
      • CPLAT-6796 Add strict inference and raw types
    • [x] #129 CPLAT-6848: Add disposable type name(s)
      • CPLAT-6848 w_common: Add disposable type name(s)
    • [x] #131 RM-53547 Release w_common 1.20.1
      • RM-53547 RELEASE w_common 1.20.1

    Notes created on Monday, August 12 06:04 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.20.0(Jun 25, 2019)

    Info

    Build: https://ci.webfilings.com/build/1796281 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1796281/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5743799431331840/ This minor release includes the following changes:

    New Features and Improvements

    • [x] #124 CPLAT-6209 Add check for compiler to use at runtime
      • CPLAT-6209 Add check for compiler to use at runtime

    Miscellaneous

    • [x] #126 RM-53538 Release w_common 1.20.0
      • RM-53538 RELEASE w_common 1.20.0

    Notes created on Tuesday, June 25 02:11 AM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.19.0(Jun 24, 2019)

    Info

    Build: https://ci.webfilings.com/build/1795864 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1795864/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5848121410322432/ This minor release includes the following changes:

    Miscellaneous

    • [x] #123 CPLAT-6212: Add dedicated sass entrypoint
      • CPLAT-6212 Add dedicated sass entrypoint
    • [x] #125 RM-53356 Release w_common 1.19.0
      • RM-53356 RELEASE w_common 1.19.0

    Notes created on Monday, June 24 08:30 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.18.1(Jun 20, 2019)

    Info

    Build: https://ci.webfilings.com/build/1791058 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1791058/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/4537274138361856/ This patch release includes the following changes:

    Miscellaneous

    • [x] #121 Add trailing slashes to sourceDir / outputDir

    • [x] #122 CPLAT-6102 Release w_common 1.18.1

      • CPLAT-6102 RELEASE w_common 1.18.1

    Notes created on Thursday, June 20 02:26 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.18.0(Jun 12, 2019)

    Info

    Build: https://ci.webfilings.com/build/1780312 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1780312/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5389865344827392/ This minor release includes the following changes:

    Miscellaneous

    • [x] #119 CPLAT-5536: Add --watch option to compile_sass script
      • CPLAT-5536 Add --watch option to compile_sass script
    • [x] #120 CPLAT-5388 Release w_common 1.18.0
      • CPLAT-5388 RELEASE w_common 1.18.0

    Notes created on Wednesday, June 12 08:20 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.17.0(Apr 17, 2019)

    Info

    Build: https://ci.webfilings.com/build/1712901 Skynet Results: https://wf-skynet-hrd.appspot.com/results/smithy/1712901/latest Pipeline: https://w-rmconsole.appspot.com/release/pipeline/5075370646962176/ This minor release includes the following changes:

    Miscellaneous

    • [x] #109 Add example app to see StateError

    • [x] #112 CPLAT-3300: CP Code Review and PR Merging Team agreement update

      • CPLAT-3300 Update all CP repos with latest CONTRIBUTING/PR_TEMPLATE/etc. docs and Rosie configs from RFD
    • [x] #113 CPLAT-5075: Add name test util

      • CPLAT-5075 Add name test util
    • [x] #116 CPLAT-5382: Add CSS compilation pub executable

      • CPLAT-5382 Add CSS compilation pub executable
    • [x] #118 CPLAT-4881 Release w_common 1.17.0

      • CPLAT-4881 RELEASE w_common 1.17.0

    Notes created on Wednesday, April 17 09:11 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.16.0(Mar 11, 2019)

    Info

    This minor release includes the following changes:

    Miscellaneous

    • [x] #108 Add disposable name and tidy up tooling

    • [x] #111 CPLAT-4262 Release w_common 1.16.0

      • CPLAT-4262 RELEASE w_common 1.16.0

    Notes created on Monday, March 11 04:52 PM UTC

    Source code(tar.gz)
    Source code(zip)
  • 1.15.1(Feb 14, 2019)

    Info

    This patch release includes the following changes:

    Miscellaneous

    • [x] #105 Allow leaner debug mode

    • [x] #106 CPLAT-2699 Release w_common 1.15.1

      • CPLAT-2699 RELEASE w_common 1.15.1

    Notes created on Thursday, February 14 10:26 PM UTC

    Source code(tar.gz)
    Source code(zip)
Owner
Workiva
Workiva
A collection of packages created to increase code reuse across many of my Flutter projects.

CodeWithAndrea Flutter Packages A collection of packages, created to increase code reuse across many of my Flutter projects. They include: Wrappers fo

Andrea Bizzotto 111 Dec 29, 2022
Utilities for loading and running WASM modules from Dart code

Provides utilities for loading and running WASM modules Built on top of the Wasmer runtime. Setup Run dart run wasm:setup to build the Wasmer runtime.

Dart 284 Dec 23, 2022
Dart GraphQL server implementation. Utilities, code generator, examples and reference implementation.

Leto - GraphQL Server A complete implementation of the official GraphQL specification in the Dart programming language. Inspired by graphql-js, async-

Juan Manuel Castillo 29 Nov 27, 2022
A collection of Dart code samples by Dart DevRel

Dart samples A collection of Dart programs that illustrate features and best practices. For a list of community-maintained projects, see Awesome Dart.

Dart 458 Dec 30, 2022
A public repo that contains all the projects built in live coding events.

JEToP Live Coding A public repo that contains all the projects built in live coding events. Star this repo to not miss it. Built with ❀️ by JEToP's IT

JEToP - Junior Enterprise Torino Politecnico 13 Nov 30, 2022
App to learn how to code with a lot of great courses and ideas of projects to do, focused on productivity and fast learn. πŸ’»

skoola A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this i

Batista Tony 3 Oct 29, 2021
IIITB Hogwarts is a project which aims at increasing students' interest in creating projects and giving them a platform to share them with others.

IIITB-Hogwarts This is going to be fun project for our college students. Thinking of bringing Harry Potter style group division into college. This is

Kartik Pant 5 Nov 9, 2022
My flutter projects work with JSON

Apps work with JSON A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you star

Samandar 1 Oct 21, 2021
Flutter development projects

quizapp A new Flutter project. Getting Started This project is a starting point for a Flutter application. A few resources to get you started if this

Subhajit Baidya 1 Oct 26, 2021
Fully customizable neumorphic containers for your flutter projects.

neumorphic_container Fully customisable Neumorphic Containers for your flutter projects. Getting Started In the pubspec.yaml of your flutter project,

Aditi Ravi 11 Jul 13, 2022
A Flutter app to estimate the price of Civil Engineering Projects.

Mobile application to estimate the price of Civil Engineering Projects About this Project This project was made to simplify and optimize the budgeting

Manoel Ribeiro 3 Mar 18, 2021
πŸ“±β° Mobile application for tracking projects time written in Flutter!

ProTime Mobile application for tracking projects time Why? This app was born from the need of a simple and minimal solution to keep track of the times

Giorgio Bertolotti 36 Aug 27, 2022
Meme Network is the creative powerhouse that supercharges your Meme projects with the World's First Layer 1 solution in the Cosmos Ecosystem.

MEME Chain How to Join MEME Mainnet Recommended system setup 4 core CPU Memory: 4GB Disk: 100GB Ubuntu 20.04 Meme Validator Node Snapshot & State-Sync

MEME Chain 10 Oct 26, 2022
This project is a implementation of a collection of terminal server samples in Dart

Terminal Server Samples ⭐ Star me on GitHub β€” it helps! This project is a implementation of a collection of terminal server samples in Dart licensed u

Javier Montenegro 0 Nov 26, 2021
A collection of Flutter examples and demos.

Flutter samples A collection of open source samples that illustrate best practices for Flutter. Visual samples index The easiest way to browse through

Flutter 14.1k Jan 7, 2023
Movie Lib is a mobile application where you can find the movies of your interest. This app provides a collection of movies of different languages according to your interest.

Movie Lib Movie Lib is a mobile application where you can find the movies of your interest. This app provides a collection of movies of different lang

Abhijith Kp 6 Sep 28, 2021
A collection of simple, bare-bones Flutter apps that each demonstrate a concept

flutter-by-example A collection of simple, bare-bones Flutter apps that each demonstrate a concept The apps are slowly being updated to Dart 2; be sur

Matt Sullivan 1k Dec 10, 2022
πŸ”₯ A collection of Firebase plugins for Flutter apps.

FlutterFire FlutterFire is a set of Flutter plugins that enable Flutter apps to use Firebase services. You can follow an example that shows how to use

null 7.4k Dec 31, 2022
Collection of common localization assets for Nations package

Nations Assets ?? collection of common localization assets for Nations package. FAQ Why not with Nations ? to make the Nations smaller and give the us

FlutterQueen 2 Jun 22, 2022