Open FloatingFront opened 5 years ago
I really struggled the other day trying to get up and going with Absinthe given the current docs while testing what it would be like to switch from Apollo Server/node. First impressions were not great as the library appeared broken to me
For people who stumble here...
asdf local erlang 22.0
asdf local elixir 1.8
rm mix.lock
# add {:plug_cowboy, "~> 1.0"} and {:jason, "~> 1.1"} dependencies
mix deps.get
# sudo -u postgres psql -c "ALTER USER postgres PASSWORD 'postgres';"
mix ecto.create
mix phx.server
Please update this repo and the tutorial. I understand this is probably unpaid work, but I feel this should be easy for beginners. I suggest getting it working with the most recent phoenix, removing postgres as a dependency, and dockerizing it. It could help with adoption (and eventually more maintainers 😃 ).
If there isn't time to work on this, maybe make a list of tasks and a point-of-contact big-and-visible?
I bought the book. Stuck on chapter 2 - preparing the application.
Same experience as the first commenter when installing the tutorial.
Now experiencing buyers remorse.
Hey folks, this tutorial definitely needs to be updated, I'll see if I can find some time over the holidays.
@alenm Notably, this tutorial has nothing to do with the book. The code for the book can be found on the prag prog website.
@benwilson512 The code from the book was producing similar errors. That's how I arrived on this github issue.
Re: Book I spent an afternoon creating a new phoenix project (latest Elixir and Phoenix) adding the dependencies, migrations, seeds and everything else from the book just to get it running.
With that said, this book is fantastic. I'm already on chapter 4, the content is easy to follow and I can see why GraphQL is so popular.
Thank you for putting the book together.
This tutorial needs to be updated so that it compiles, and preferentially without warnings about depricated means being used in the actual tutorial.
I am more than willing to try to nudge this into the right direction by using elbow grease, but I don't yet have the brains to do so - so if I could tap into someone else's, that might get things going in the right direction.
Having smooth running first tutorial(s) might actually be the ramping needed to get the footfall going upwards.
These tutorials could also serve two purposes at the same time, introduce newbies ( like me) to this great ecosystem, AND at the same time provide a readymade testbed for test cases supporting the difficult task of replicating real issues people are running into.
Companies often can't share the source code for replicating issues, it is private, business/legally sensitive and it can often be hard to pull out a meaningful test case from a large complex system.
Having a really smooth tutorial, that doubles as a test bed for replicating test cases means that these tutorials get improved importance and will be nurtured and maintained better as they suddenly make sense to both the newbies and the veterans, though serving two different purpose or role at the same time.
Anyway, enough of ranting... :-)
I tried to go through this tutorial, and this is what I got.
====
Checking out https://github.com/absinthe-graphql/absinthe_tutorial.git
And then what?
The README.md does not give any hints regarding what the next step should be for following the tutorial.
The docs are in *.md format, shouldn't they be in html or even just plain txt format?
And where are the documents? Tried the following from the absinthe_tutorial/ root:
The README.md gives https://hexdocs.pm/absinthe/ which is redirected to https://hexdocs.pm/absinthe/overview.html which is fine.
But what if the docs at https://hexdocs.pm/absinthe/overview.html are updated?
Then the version I have checked out might be out of sync with the version online at https://hexdocs.pm/absinthe/overview.html - not good. For example if you are a company and are running certain version locally, and referring to the docs https://hexdocs.pm/absinthe/overview.html you might be suddenly running into trouble when those get updated, and then the help forums get overwhelmed with silly requests... which would be a totally uneccesary timewasting pitfall.
Resolving Hex dependencies... Dependency resolution completed: Unchanged: absinthe 1.4.0 absinthe_ecto 0.1.3 absinthe_plug 1.4.0 argon2_elixir 1.2.9 comeonin 4.0.3 connection 1.0.4 cowboy 1.1.2 cowlib 1.0.2 db_connection 1.1.2 decimal 1.4.1 ecto 2.2.6 elixir_make 0.4.0 gettext 0.13.1 mime 1.1.0 phoenix 1.3.0 phoenix_ecto 3.3.0 phoenix_pubsub 1.0.2 plug 1.4.3 poison 3.1.0 poolboy 1.5.1 postgrex 0.13.3 ranch 1.3.2
This warning above about quoted keyword "test" should be fixed - for a newby it is scary... it should be inviting and reassuring experience to run through a first tutorial like this.
Now this is not as it should be, lots of warnings about depricated stuff, and finally the query used in the tutorial doesn't actually compile:
Everyone can see that this is not as it should be, I understand that there are more pressing issues than fixing tutorial material 101 for newbies - but it could be so much better and server twofold purpose in providing bug replicating testbed for test cases - then everyone would see benefit of having great tutorial material and the silly support issues would go down, and everyone be happy :-)