-
Notifications
You must be signed in to change notification settings - Fork 14
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Added upper limits of required dependencies #176
Conversation
Thank you so much for your contribution @DanRCM LGTM! |
dotenv.cabal
Outdated
, megaparsec >= 9.2.2 && <= 9.4.1 | ||
, process >= 1.6.16 && < 1.7 | ||
, text >= 1.2.5 && < 1.3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@DanRCM I see we're also using these dependencies in the library. It's not necessary to define the boundaries for every dependency in library, executable, and test-suite. It's good practice to define them in one section it once and the boundaries will automatically be inherited by other sections.
dotenv.cabal
Outdated
, megaparsec >= 9.2.2 && <= 9.4.1 | ||
, hspec >= 2.9.7 && <= 2.11.4 | ||
, process >= 1.6.16 && < 1.7 | ||
, text >= 1.2.5 && < 1.3 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The comment above also applies here.
stack.yaml
Outdated
|
||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We can remove these extra lines.
@DanRCM Let's specify the boundaries of the common dependencies only in the library section. The boundaries will be automatically inherited to the other sections. |
dotenv.cabal
Outdated
, process >= 1.6.3.0 && < 1.7 | ||
, shellwords >= 0.1.3.0 | ||
, text | ||
build-depends: base >= 4.16.4 && < 4.17 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@DanRCM It looks good. Let's not update the boundaries of base
, though.
@CristhianMotoche Hi, thanks for your recommendation, the changes have been made. |
Hello @DanRCM Thanks for addressing the suggestions. It seems something in the recent changes has caused issues when building the package. I think you need to lower the boundaries for |
Hello @DanRCM Do you need any help on this PR? |
Hello, excuse me, I have been really busy, but I'll continue working in your project, thank you for your help, I'll do the changues inmediately |
Hello @CristhianMotoche the changes have been made, I have been taking your advices to lower the |
@CristhianMotoche |
Hello @DanRCM It seems there are some issues with the changed boundaries. Let me double check your PR locally and I'll keep you posted. |
ok, thanks for keeping me in mind, it's a pleasure |
@all-contributors please add @DanRCM for code |
I've put up a pull request to add @DanRCM! 🎉 |
#174
Issue 1: 'ghc-options: -O2' is rarely needed:
Time tests were conducted using
time cabal build
, yielding the following results:Without using "-O2":
With the use of "-O2":
From these results, we can see that the use of "-O2" doesn't actually provide any time-related benefits.
Issue 2: Missing Upper Bounds in Dependency Packages
Upper bounds were added to the dependencies that required them: "-compat -containers -directory -hspec -shellwords -text". The
gen-bounds
tool was used, as suggested. Tests were conducted viastack
to assess the compatibility of each of the packages with the upper bounds I set, based on the proposed suggestions using thegen-bounds
tool."