8000 Comparing 0.10.0...0.11.0 · erikjuhani/fp-utils · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: erikjuh 8000 ani/fp-utils
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 0.10.0
Choose a base ref
...
head repository: erikjuhani/fp-utils
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 0.11.0
Choose a head ref
  • 8 commits
  • 23 files changed
  • 1 contributor

Commits on Mar 23, 2024

  1. Configuration menu
    Copy the full SHA
    2963571 View commit details
    Browse the repository at this point in the history

Commits on Mar 24, 2024

  1. Configuration menu
    Copy the full SHA
    5c7b5f9 View commit details
    Browse the repository at this point in the history

Commits on Mar 26, 2024

  1. Option module overhaul

    BREAKING CHANGE
    
    First the big change for the API! Previously users needed to create Some
    type and None type through the namespace function `.some` or `.none`
    respectively. This felt a bit tedious at times as calling
    `Option.some(42)` is quite verbose. In this overhaul `Some()` and
    `None()` functions were introduced. These are actually behind a Proxy
    that will apply the arguments to the class constructors. None being a
    static entity. To achieve the API we use a Proxy to trap the function
    call and then return the constructed entity. The static functions are
    still kept for more concise operability with callbacks and to retain
    backwards compatibility. The breaking change is when callers need to
    type with either Option.Some or Option.None. These will now result in
    compiler error and should be changed to just Some or None.
    
    Other big change introduced in this commit was the use of abstract class
    and static methods for the Option type. This allows for better
    interoperability and for example the documentation can now be written
    only for the abstract methods and these will still be visible from the
    Some and None classes.
    
    README was also updated to encompass these changes. Static methods and
    higher-order functions were documented in the README usage section as
    well.
    
    Tests and examples were updated to match the new API.
    erikjuhani committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    feeffa6 View commit details
    Browse the repository at this point in the history
  2. Move module documentation to mod.ts file in Option module

    Use static methods Option.some and Option.none directly when exporting
    Some and None types instead of Proxy implementation. Proxy added too
    much performance overhead to my liking. This library should have minimal
    effect on performance if added as a dependency.
    erikjuhani committed Mar 26, 2024
    Configuration menu
    Copy the full SHA
    c6461e8 View commit details
    Browse the repository at this point in the history

Commits on Mar 27, 2024

  1. Configuration menu
    Copy the full SHA
    87d2ebe View commit details
    Browse the repository at this point in the history
  2. Result module overhaul

    BREAKING CHANGE
    
    First the big change for the API! Previously users needed to create Ok
    and Err types through the namespace function `.ok` or `.err`
    respectively. This felt a bit tedious at times as calling
    `Result.ok(42)` is quite verbose. In this overhaul `Ok()` and `Err()`
    functions were introduced. These are actually just the same static
    methods as previously, but acting as constructor functions similar to
    JavaScript `String` and `Number` constructors. The static functions are
    still kept for more concise operability with callbacks and to retain
    backwards compatibility. The breaking change is when callers have types
    Result.Ok or Result.Err. After these changes these types will now result
    in compiler error and should be changed to Ok or Err instead.
    
    Other big change introduced in this commit was the use of abstract class
    and static methods for the Result type. This allows for better
    interoperability and for example the documentation can now be written
    only for the abstract methods and these will be inherited by extending
    and appear visible from the Ok and Err class methods.
    
    README was also updated to encompass these changes. Static methods,
    constructor functions and higher-order functions are documented in the
    README usage section.
    
    Tests and examples were updated to match the new API.
    erikjuhani committed Mar 27, 2024
    Configuration menu
    Copy the full SHA
    544d6b3 View commit details
    Browse the repository at this point in the history
  3. Use jsr dependencies in build_npm file

    dnt is now found from jsr as @deno/dnt. The flags parse was deprecated
    and instead it should be imported from @std/cli.
    erikjuhani committed Mar 27, 2024
    Configuration menu
    Copy the full SHA
    27c36f8 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3a5e488 View commit details
    Browse the repository at this point in the history
Loading
0