benwilson512

benwilson512

Author of Craft GraphQL APIs in Elixir with Absinthe

Hey folks!

The short version is: I’m looking for a maintainer to take over the operation and maintenance of the ExAws project. CargoSense hasn’t done anything particularly interesting with AWS services in a long time, and I personally lack the time maintain these projects at this point. I have been unable to keep up with developments within AWS’s auth system and this has lead to fragmented support of various features, and PRs I’m unable to meaningfully review. This isn’t the state I want these libraries to be in, but I simply am unable to do anything about it.

To be clear, I am not stepping away from open source. I have a sizable roadmap planned for Absinthe, and there are other, smaller, projects that I’m looking to refresh. However I am trying to focus my efforts, both for my own sanity as well as the health of the projects I’ve created.

The actual maintenance required is reasonably low, but it can also be very critical to people’s operations. My preference would be to find a maintainer who is part of a company utilizing AWS, but if you’re interested please feel free to send me a DM.

Showing Posts 1 to 10

cnck1387

cnck1387

Do you have any recommendations for alternative libraries if no one ends up taking over yours?

I wonder how this will effect libraries like waffle, since they depend on ex_aws for file uploads to S3.

benwilson512

benwilson512 OP

Author of Craft GraphQL APIs in Elixir with Absinthe

ExAws is, as far as I know, the only actively maintained (for some definition of active ;)) AWS library. Someone will pick it up, I’m sure of it :slight_smile:

axelson

axelson

Scenic Core Team

Thanks for your work on creating and maintaining ExAws! I’ve used it in multiple projects and it’s great :heart:

I wonder if you’d be interested in creating a posting on:
https://adoptoposs.org/

(which happens to be written in Elixir using Phoenix liveview)

11
Post #3
sorentwo

sorentwo

Oban Core Team

I’m really pleased to see you reaching out to the community to ask for help. This is a huge project that a lot of companies rely on, I’m sure you’ll get somebody stepping up.

I’ll be linking this to a couple people.

19
Post #5
hauleth

hauleth

Just to point out my disappointment with choice of mascot. Due to name I think that Opossum would be much better choice (in my language it is called just “opos”).

mbklein

mbklein

Hiya Ben,

Since I’m already a committer on ExAws.SNS and a heavy user of several other service modules, I would definitely be interested in seeing what my team and I can to support ExAws as well. We’re heavily committed to open source and always looking for ways to contribute back, and this might be a good fit for us.

That includes one or more of us taking on the role of Maintainer if we can swing it, but it would help to have some idea of the number/frequency of pull requests, issues, support needs, etc. so that I can make a case to my supervisor(s) that it would be a worthwhile thing for us to devote some time to.

27
Post #7
naps62

naps62

Hi ben,

I’ve been a long time user of ExAws, and so have a few other people at my company. We’d be potentially interested in helping out with this as well (our company is be more than willing to help with supporting open source projects)

Feel free to contact me if you still need help and want to discuss more

11
Post #8
nbrandaleone

nbrandaleone

Hi Ben,

I am also happy to assist where possible. Although I work for AWS and love Elixir, I am not a developer anymore (Solutions Architect) - so my productivity would be low. However, hopefully between all of us in the community, we can keep this amazing library healthy.

I have not looked into the code, but most of the other 3rd party libraries generate code from one one of the official SDK, and that allows for easy upgrades as the API moves forward. I am guessing that is not the approach taken with ExAws? For example: GitHub - inhabitedtype/ocaml-aws: Generated OCaml bindings for Amazon Web Services · GitHub

anthonator

anthonator

What’s the status of this? Did anyone step up to maintain this project?

benwilson512

benwilson512 OP

Author of Craft GraphQL APIs in Elixir with Absinthe

Update

Hey everyone. I received a lot of supportive comments from people, and for that I’m very grateful. Unfortunately, all of the comments took some version of the form of “I’d be happy to contribute some, but I don’t have the time to run the project”. To be clear, I think this is a perfectly sensible answer, after all it is basically my answer here. However I’m really not looking for contributors, I’m looking to be done with this project. Also, the more I’ve looked at the project, the more I think it has certain fatal flaws in its approach, and the right course of action isn’t to keep pushing forward in this direction but rather find a new one.

Thus, my current inclination is to simply deprecate ExAws entirely, and advocate that someone write a replacement.

A replacement could utilize the patterns in ExAws that I think are good, while also aiming to auto-generate functionality as people tend to do in other languages with AWS libraries. The bits that are worth keeping from an approach perspective is:

  • Pluggable dependencies (minimize hard coded deps on any specific json codec / http library / etc).
  • Operations as data structures. Instead of Aws.S3.list_objects actually doing the request, have it return a data structure that you pass to a function that actually executes it. This allows much much easier interop with other libraries.

Areas where a new library could improve:

  • Utilize auto-generated functions from the spec to get 100% API coverage immediately
  • Testing strategy. I never came up with a good way to do tests in ExAws and consequently there basically aren’t any. This is bad for all of the obvious reasons, and it’s also a key element of why development stagnated. I had to manually audit or test every change since there wasn’t any regression testing, and as I ran out of time that meant I either had to blindly merge PRs or not merge PRs at all. I chose the latter generally, and this killed the project.

Where Next? Top

Trending in Discussions Top

AstonJ
As the title says, please share what you’ve been up to with Elixir. Whether that’s been learning it, looking into it, making stuff with i...
2977 92995 915
New
caslu
I want to open this thread for you all to discuss and help those who really like Ash but are still hesitant to use it in a real project. ...
New
mudasobwa
I am happy to introduce the very α version of the new programming language compiled to BEAM. Welcome Cure. It has literally three kille...
New
Herve37
We’re evaluating API mocking tools for OpenAPI-based projects and would love to hear what other teams are using. We’re particularly inte...
New
GES233
I’m posting this in response to Jose’s recent tweet (Cr. link) : People are sleeping on Elixir for a coding harness: Hot-code swappi...
New
_mfierro
Hello, I wrote Stop My Hand, a Scattergories-like web application using Phoenix/LiveView as my learning project for Elixir (after readin...
New
nseaSeb
AcmeScript — Writing JS hooks as if I were still using Elixir I’ve been having fun building a little something over the last few days: Ac...
New

Other Trending Topics Top

garrison
Hobbes is a low-level distributed database for the Elixir programming language. Hobbes provides a simple, safe, and scalable storage lay...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
mcass19
ExRatatui lets you cook up rich terminal UIs in Elixir, powered by Rust’s ratatui via Rustler NIFs. Build interactive terminal applicatio...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
netoum
Corex is an accessible, unstyled UI component library for Phoenix that integrates Zag.js state machines using Vanilla JavaScript and Live...
New
wintermeyer
There are three potential reasons for members of this forum to have a look at https://vutuv.de You are tired or annoyed of LinkedIn. Yo...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews