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 94592 917
New
cblavier
Hey there, It’s been more than a year since we started using LiveView as our main UI library and building a whole library of UI componen...
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
heathen
Quite interesting article Google brought me. Didn’t find any mentions about it here. What do you think in general? Would you use togethe...
New
mhanberg
Hi everyone! The first release candidate for the Expert language server project is now available! We’ve published a press release detai...
New
axelson
Hi there! :wave: @frigidcode and I (but mostly him) have been running an Elixir Book club, we’re almost done with Designing Elixir Syste...
New
budgie
A little off-topic, but I feel like people here have a good head on their shoulders. I used to be quite good at making software. Was luc...
New

Other Trending Topics Top

GenericJam
Edit: 2026 May 15 - This post is archived. Mob is alive!! Main docs: mob v0.7.11 — Documentation A bit of explanation for the slightly c...
New
JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
marciok
Hi there! We created Gust: A task orchestrator inspired by Airflow. For those who have never heard about Aiflow, it’s a Python-based wor...
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
georgeguimaraes
Just published claude-code-elixir, a plugin marketplace for Claude Code with Elixir support. These are the plugins I’ve been using for my...
New
Dmk
Xamal is a deployment tool for Elixir apps that deploys native releases to bare metal servers over SSH. It’s a port of GitHub - basecamp/...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews