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

juhalehtonen
There has been a thread to discuss the Stack Overflow Developer Survey on this forum every year since 2018, so here’s yet another one for...
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
I love Elixir. It’s one of 2 programming languages I’ve ever fallen in love with. But I don’t use it anymore. Serverless was the promis...
New
alexslade
Fly’s CEO posted this recently - Turn And Face The Strange · The Fly Blog It says that Fly is going all-in on sprites, which is a worry ...
New
jam
This was an interesting post by Jose. Curious to hear what others think. Evolving programming languages in the AI era - Dashbit Blog Gen...
New
sntran
In my third year of college, around 2010, I found Erlang. A few years later, I found Elixir. I liked the ideas at once: many small proces...
New
Ganna
Hi everyone, I have 8 years of production experience with Erlang/OTP and I’m just starting to get to know Elixir. What would you learn f...
New

Other Trending Topics Top

mudasobwa
I fully migrated to my own harness from Anthropic/Gemini and I think it’s time to share it. Welcome DSH, the DeepSeek Harness, fully writ...
New
KristerV
Hey. Is there anyone here who creates agents in their apps? Not talking about using agents, but creating them. I’m finding it pretty diff...
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
webofbits
With AI doing more of the implementation work, I’ve been wondering how much coding I should deliberately keep doing myself. My main conc...
#ai
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
OndrejValenta
(I just needed to vent somewhere and LinkedIn is full of hope, or hype, I’m not sure which exactly) AI dream has many faces, but general...
New

We're in Beta

About us Mission Statement

Options

Thread Display Mode




Thread Preview

Skip Thread Previews