timkendall / crynamo

DynamoDB client for Crystal.
https://timkendall.github.io/crynamo/
MIT License
14 stars 4 forks source link

Error within lib/awscr-signer/src/awscr-signer/core/header.cr:12:5 regarding abstract function definitions #26

Open BitlyTwiser opened 2 years ago

BitlyTwiser commented 2 years ago

Error:

Showing last frame. Use --error-trace for full trace.

In lib/awscr-signer/src/awscr-signer/core/header.cr:12:5

 12 | class Header
      ^
Error: abstract `def Comparable(T)#<=>(other : T)` must be implemented by Awscr::Signer::Header

Dependencies:

  crynamo:
    github: timkendall/crynamo

My implementation is very generic:

require "crynamo"

module DynamoDB
  class ClientHistory
    # Getters/Setters
    property dynamodb_client : Crynamo::Client
    property config : Crynamo::Configuration
    property table_name : String
    property logger : Logger

    # Initialize/Constructor of class object
    def initialize(logger)
      @table_name = ENV.fetch("TABLENAME")
      @logger = logger
      @config = Crynamo::Configuration.new(
        access_key_id: ENV.fetch("AWS_ACCESS_KEY_ID"),
        secret_access_key: ENV.fetch("AWS_SECRET_ACCESS_KEY"),
        region: ENV.fetch("AWS_REGION"),
        endpoint: ENV.fetch("DYNAMODB_URL"),
      )
      @dynamodb_client = Crynamo::Client.new(config)
    end

    # Push Object to DynamoDB
    def create_item(data)
      dynamodb_client.put!("#{table_name}", data)
    end
  end
end

It seems this error was fixed within awscr-signer repo: https://githubmemory.com/repo/taylorfinnell/awscr-signer/issues/42

I believe the version within this project is outdated and causing issues.

Resolution should just be updating the version number:

  awscr-signer:
    github: taylorfinnell/awscr-signer
    version: ~> 0.8.2