Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 08:26
    jf commented #1125
  • 07:44
    jf edited #1125
  • 07:40
    jf edited #1125
  • 07:38
    jf opened #1125
  • Sep 25 08:06
    jf opened #1124
  • Sep 24 13:05
    kh0m starred hanami/hanami
  • Sep 24 09:18
    nobiit starred hanami/hanami
  • Sep 24 00:40
    forecho starred hanami/hanami
  • Sep 23 03:03
    itopmoon starred hanami/hanami
  • Sep 22 04:30
    HoangNguyen679 starred hanami/hanami
  • Sep 21 17:23
    Kushal334 starred hanami/hanami
  • Sep 17 13:13
    timriley synchronize #1123
  • Sep 17 13:13

    timriley on elide-slice-name-in-lib

    Elide slice name from lib/ when… (compare)

  • Sep 17 13:11
    timriley opened #1123
  • Sep 17 13:09

    timriley on elide-slice-name-in-lib

    Elide slice name from lib/ when… (compare)

  • Sep 17 03:08
    redvoilin starred hanami/hanami
  • Sep 16 00:49
    woarewe starred hanami/router
  • Sep 15 07:33
    BulatKarimov starred hanami/hanami
  • Sep 14 17:14
    kotx starred hanami/hanami
  • Sep 14 17:05

    depfu[bot] on update

    (compare)

trafium
@trafium
@adam12_:matrix.org Thanks, we've managed to make it work with https://github.com/uken/guard-sidekiq for the time being.
trafium
@trafium
Also, a question concerning Hanami 2.0.
My colleague and I are currently developing/maintaning a couple of Rails applications and have little production experience otherwise. Being heavily burned by both our earlier incompetence but also later by Rails, we are considering using Hanami 1.3 for our next commercial application product. Since Hanami 2.0 is on the horizon, we're wondering if there is any information available about how painful it would be to migrate 1.3 -> 2.0 when it's released.
adam12
@adam12_:matrix.org
[m]
@trafium: No information on the migration available yet (at least that I'm aware of).
Sebastian Wilgosz
@swilgosz
@trafium I know there is https://github.com/hanami/bookshelf - an example application that https://github.com/cllns had been updating from 1.3 to 2.0
I am working on guides in genwral, but upgrade notes will be added when beta version will he released the soonest.
Sebastjan Hribar
@sebastjan-hribar

Also, a question concerning Hanami 2.0.
My colleague and I are currently developing/maintaning a couple of Rails applications and have little production experience otherwise. Being heavily burned by both our earlier incompetence but also later by Rails, we are considering using Hanami 1.3 for our next commercial application product. Since Hanami 2.0 is on the horizon, we're wondering if there is any information available about how painful it would be to migrate 1.3 -> 2.0 when it's released.

You're not alone, at least :) We'll launch with 1.3 as we're closing in on the 1.0 with our app and will migrate later.

Sebastian Wilgosz
@swilgosz
@trafium @sebastjan-hribar I would happily dig into the topic and prepare some guides, maybe HanamiMastery episodes too, if there would be enough need for this. I am just a bit afraid it's too early yet.
Luca Guidi
@jodosha
New Git Branches for Hanami development: https://twitter.com/hanamirb/status/1405792411561955330
jaypandya
@jaypandya:matrix.org
[m]
Hello guys
Using Hanami how can we connect to multiple databases? one way I can see is to use Sequel as ORM but if we've way to do it with default ROM then it would be great
Sebastian Wilgosz
@swilgosz
@jaypandya:matrix.org rom is built on top of sequel, it allows all the features sequel does as far as I know.
jaypandya
@jaypandya:matrix.org
[m]
Yes I see it
Thanks for your help 😃
trafium
@trafium
Question: is it possible to use partial templates inside hanami/mailer?
Sebastjan Hribar
@sebastjan-hribar
@swilgosz Please excuse my question, but is there any hands on examples how to do this? I've asked this before but got nowhere. I assume it involves more than just adding more adapters to environment and .env files.
Sebastian Wilgosz
@swilgosz
@sebastjan-hribar you mean: the multi databases with rom? I don't have such resources just yet. If you think it's important, I do support my github sponsors by prioritising Hanami Mastery tutorials creation for their needs.
dagnachewa
@dagnachewa
hello everyone
I am new here and would it be ok to ask question comparing against the other framework ?
Sebastian Wilgosz
@swilgosz
Sure! @dagnachewa I am in the middle of preparing detailed rails comparison e-book, I am afraid It's the only comparison I could help at the moment
trafium
@trafium

Answering my own previous question about partials/layouts in hanami/mailer: we ended up hacking together hanami/view instance with hanami/mailer to get all those sweet view helpers, partials and layouts in our mailers.

New question: what is the preferred way of sharing configuration code between two web applications?

For example, I have apps/auth/application.rb and apps/admin/application.rb and I want them to share content security policy, some included helpers for views/actions and staging/production host configuration. I've found in this chat's history discussion about sharing config via inheritance (ie Auth::Application and Admin::Application extend Web::Application where shared configuration is defined), but as I understood this approach could cause problems.

Sebastian Wilgosz
@swilgosz
@trafium I only know that in Hanami 2.0 settings are done via dry-configurable and dependency loading via dry-system and zeitwerk, so it's easy to inject the config as a dependency anywhere - but I see you're using 1.x which I don't know :(
jaypandya
@jaypandya:matrix.org
[m]
Does hanami(ROM) provides any way for bulk upsert? just like rails upsert_all? one way would be to write custom query so if we go that path is it possible via command?
Armin
@wuarmin
@jaypandya:matrix.org if you are using Postgresql, you can achieve it on the db level via insert on conflict. Romrb supports this via dsl(sequel under the hood) https://www.rubydoc.info/github/rom-rb/rom-sql/ROM/SQL/Postgres/Commands/Upsert
jaypandya
@jaypandya:matrix.org
[m]
Thanks but I'm using MySql and right now I've achieved it using custom query
Kazuya Hatanaka
@ippachi

Does anyone know how specify controller to nested route?

code

resources :organizations, only: [] do
  member do
    get 'me', to: 'sessions#me'
  end
end

want

$ hanami routes
           Name Method     Path                           Action

me_organization GET, HEAD  /organizations/:id/me          Web::Controllers::Organizations::Sessions::Me

actual

$ hanami routes
           Name Method     Path                           Action

me_organization GET, HEAD  /organizations/:id/me          Web::Controllers::Organizations::Me

I tried controller: option instead of to:, but I got same ouput.

Sebastian Wilgosz
@swilgosz
@Kabombom you need to use . instead #
get 'me', to: 'my.nested.action'
Or use the namespace/scope. I have presented this a bit in my second Hanami Mastery episode, feel free to use it as a reference. https://hanamimastery.com/episodes/2-listing-articles-with-hanami-view
Sebastian Wilgosz
@swilgosz
Also, I have written almost complete routing chapter for official Hanami 2.0 guides, but it's in a pull request to master waiting for other chapters to be added, feel free to check it out too! :) hanami/guides#90
jaypandya
@jaypandya:matrix.org
[m]

Hey guys
do we have any performance comparison with latest hanami app?
I'm trying to develop Hanami app + api as well and when I try to request hanami app using postman even simple "Hello world" response is taking like 200ms and where on the other hand I tried Sinatra and it serves response in 70-80 ms 🤔

am I missing something to compare it? it seems like Hanami is taking bit longer so I want to confirm
I might be wrong in this comparison

Sebastian Wilgosz
@swilgosz
I am not sure. Jeremy evans had published recently an update of benchmark between roda and other frameworks, see: https://roda.jeremyevans.net/ but I believe he compared it against latest official version, which is 1.3
But there is comparison with hanami-api though @jaypandya:matrix.org . There is another benchmark on the official hanami blog, but only comparing Hanami router. We definitely will prepare some benchmarks but I don't think it makes sense to spend time on it now, as there will be performance improvements in the upcoming releases.
jaypandya
@jaypandya:matrix.org
[m]
Thanks @swilgosz for looking into this but I dig into this and find out that on every request it was loading code every time so when I run server with --no-code-reload argument it worked perfectly and got response in 20-30ms so it looks good
Sebastian Wilgosz
@swilgosz
@jaypandya:matrix.org thanks!
jaypandya
@jaypandya:matrix.org
[m]
has anyone tried changing default ROM dataset as I want to remove default ordering on primary key for some of my queries
as https://rom-rb.org/3.0/learn/sql/relations/ ROM relations class says that by default it will select all DB columns and it will perform ORDER BY operation on table primary key
so I'm trying to change this dataset for my Repositories but I'm not able to override default dataset
Raul Victor Coan
@Wynteres
Hey guys, anyone knows how to use the view to render JSON without it triggering that freaking safety feature that converts " to " ?
Maxi
@mvadora_twitter
Hey guys! I'm new here. So I have some questions to ask you.
  1. How can I start with hanami? -> Currently I'm reading docs and understanding the hows and the whys
  2. Why should I choose hanami instead of rails to build a new application?
  3. What is the ideal or perfect project for hanami?
    Thanks!
Sebastjan Hribar
@sebastjan-hribar
Hi all, does anyone know how to add unique constraint on an combination of columns like so: add_unique_constraint(:column_1, :column_2). This, however, returns no implicit conversion of Symbol into Hash.
Sebastian Wilgosz
@swilgosz
@mvadora_twitter I suggest to either wait a little bit, or try to focus on sources covering Hanami 2.0, like my Hanami Mastery project. https://hanamimastery.com/. I am in the process of creating PDF about differences between Hanami and Rails, and also some guides when and how to switch. I have also written an article talking about my experience in switching from Rails (https://www.useo.pl/blog/2021/07/trying-hanami-in-microservices). For philosophy I recommend the official guides (https://guides.hanamirb.org). The Hanami Guides for 2.0 are in progress by me (hanami/guides#90). For direct contact and help I can recommend supporting me on Github, I prioritize questions and topics of my GH sponsors when preparing new HM episodes and articles. Also I give access to my private, and beta projects source code for them. Finally, there is a bookshelf repository in Hanami gh account, where you can see by an example a complete application.
Maxi
@mvadora_twitter
@swilgosz Hi, thanks for the answer, I definitely gonna take a look at each stuff that you've mentioned.
Sebastjan Hribar
@sebastjan-hribar

Hi all, does anyone know how to add unique constraint on an combination of columns like so: add_unique_constraint(:column_1, :column_2). This, however, returns no implicit conversion of Symbol into Hash.

it seems to work by passing in an array of column names. Also, to remove the previously added unique constraint on a column use the drop_constraintmethod and pass it the constraint name, created by the add_unique_constraint.

Sebastian Wilgosz
@swilgosz

@sebastjan-hribar does this help you? It seems you need to pass an array of columns, try to wrap it with []

https://github.com/jeremyevans/sequel/blob/master/doc/schema_modification.rdoc#index-

Sebastjan Hribar
@sebastjan-hribar
@swilgosz yes, I can implement the new constraint by passing the array of columns, but I also had to drop the previous one, which I couldn't figure out. I've ended up just dropping the db and adjusting the previous migration. With seeding in place we have the db back for dev in no time :)
Dino Koutrouzas
@dino-koutrouzas

@sebastjan-hribar had to do this the other day by using drop_constraint with the name of the constraint, which in our case was something like drop_constraint :table_name_first_column_second_column_key

https://sequel.jeremyevans.net/rdoc/classes/Sequel/Schema/AlterTableGenerator.html#method-i-drop_constraint

Brendan
@b-murphy

Hey All :wave:

I've recently hit an oddity with my spec within a newly create hanami app.

Basically we have controllers which will use the handle_exception => :do_a_thing

To test this we are using expect { action.call(params) }.to raise_error(exception, message)

Which works nicely; But the issue is that we can't seem to configure handle_exceptions correctly to false when running request specs; we've tried handle_exceptions ENV.fetch('HANDLE_EXCEPTIONS', true) and using allow(ENV).to receive(:fetch).with('HANDLE_EXCEPTIONS') But something within the pre-booting of the application.rb within this doesn't listen to this or something else we perhaps are missing?!

Having a dig though hanami's own specs we noticed hanami/devtools doing something to RSpec::Support::Env which looks like it would cover the case; but haven't explored yet; but seems like a relatively simple problem we perhaps have just missed!

Any help would be greatly appreciated!

Artemiy Solopov
@art-solopov
Hi all.
Sorry if this question is explained elsewhere.
Can I render a partial from a view/helper? render partial: partial_name in a helper method throws an ArgumentError.
Sebastjan Hribar
@sebastjan-hribar
@art-solopov I'm not sure what the problem would be, but we keep partials in apps\templates\shared, name them like _notice.html.erb and invoke them in the template like <%= render partial: 'shared/notice'%>.
Sebastjan Hribar
@sebastjan-hribar
I've put together a small blog post for how I use Tachiban. I'm comparing the use across my apps and I realized this is something that would be useful from the start, but I haven't put it in the readme.
Anyway, I hope it will be useful to someone else as well. I'll update if/when I find any errors and I'll write one for Rokku.
Sebastian Wilgosz
@swilgosz
Hi, I have published a short YT video guide about mapping Rails to Hanami, it may help to quickly grasp basic hanami concepts for people coming from the Rails world:).