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

Update Nimrod to 0.10.0 #1175

Merged
merged 6 commits into from Nov 5, 2014

Conversation

Projects
None yet
4 participants
@idlewan
Contributor

idlewan commented Nov 4, 2014

Update Nimrod, Jester and Nawak to their latest versions.

  • Nawak incorporated its stdlib changes upstream, and is now using and dependent on the nimble package manager and the nim-zmq and nim-uuid package. It was also made compatible with the latest Nim/Nimrod.
  • Jester is using its new async (unfortunately there is no scgi support for now).

N.B.: Nimrod the programming language is being renamed Nim when the official 0.10 comes out.

idlewan added some commits Nov 3, 2014

Nawak: limit number of workers for Travis
The number of postgresql connections available are currently limited with Travis.
Avoids hitting the "remaining connection slots are reserved for
non-replication superuser connections" error.
@@ -1 +0,0 @@
./jester/hello.nim

This comment has been minimized.

@hamiltont

hamiltont Nov 4, 2014

Contributor

Could you just update this instead of emptying it? The source_code file is used to count the lines of code in the project - each file listed in source_code has its lines counted

@hamiltont

hamiltont Nov 4, 2014

Contributor

Could you just update this instead of emptying it? The source_code file is used to count the lines of code in the project - each file listed in source_code has its lines counted

This comment has been minimized.

@idlewan

idlewan Nov 4, 2014

Contributor

I couldn't find a reference to it in the README, so I thought it was an unused artifact that could be deleted.
Maybe we should update the documentation about this (I didn't put such file for Nawak, for example. Maybe I should?).

@idlewan

idlewan Nov 4, 2014

Contributor

I couldn't find a reference to it in the README, so I thought it was an unused artifact that could be deleted.
Maybe we should update the documentation about this (I didn't put such file for Nawak, for example. Maybe I should?).

This comment has been minimized.

@hamiltont

hamiltont Nov 4, 2014

Contributor

I did too, until I was patching some code and it suddenly starting being used :-P I'll open an issue about missing documentation. In the meantime, adding the file to nawak would be useful to ensure we can count LOC for all the frameworks. We're not using these LOC numbers, but it's nice to include them in the hopes they are used in the future

@hamiltont

hamiltont Nov 4, 2014

Contributor

I did too, until I was patching some code and it suddenly starting being used :-P I'll open an issue about missing documentation. In the meantime, adding the file to nawak would be useful to ensure we can count LOC for all the frameworks. We're not using these LOC numbers, but it's nice to include them in the hopes they are used in the future

This comment has been minimized.

@idlewan

idlewan Nov 4, 2014

Contributor

I don't even think they are up to date with the directories change (when everything was put into frameworks/languageX/....
Should this be a path relative to TROOT, or FWROOT? Right now, they are all broken, because they refer to the old FWROOT.

@idlewan

idlewan Nov 4, 2014

Contributor

I don't even think they are up to date with the directories change (when everything was put into frameworks/languageX/....
Should this be a path relative to TROOT, or FWROOT? Right now, they are all broken, because they refer to the old FWROOT.

This comment has been minimized.

@hamiltont

hamiltont Nov 4, 2014

Contributor

I fixed the code so that we wouldn't have to update all the different
source_code files, so the path is relative to the language folder
(Nimrod here).

@hamiltont

hamiltont Nov 4, 2014

Contributor

I fixed the code so that we wouldn't have to update all the different
source_code files, so the path is relative to the language folder
(Nimrod here).

@idlewan

This comment has been minimized.

Show comment
Hide comment
@idlewan

idlewan Nov 4, 2014

Contributor

To note:
I was hit by #1070 and postgresql's remaining connection slots are reserved for non-replication superuser connection.
I thus limited the number of workers/database connections when on Travis (32 instead of 256).

Contributor

idlewan commented Nov 4, 2014

To note:
I was hit by #1070 and postgresql's remaining connection slots are reserved for non-replication superuser connection.
I thus limited the number of workers/database connections when on Travis (32 instead of 256).

@@ -11,7 +11,7 @@ def start(args, logfile, errfile):
"host=" + args.database_host + " port=5432")
# compile the app
subprocess.check_call(
"nimrod c --threads:on -d:release -d:postgre_model --path:../installs/nawak/nawak -o:nawak_postgre app.nim",
"nim c --threads:on -d:release -d:postgre_model --path:$NAWAK_PATH -o:nawak_postgre app.nim",

This comment has been minimized.

@hamiltont

hamiltont Nov 4, 2014

Contributor

glad to see all these paths fixed and using the variables instead of hardcoded values!

@hamiltont

hamiltont Nov 4, 2014

Contributor

glad to see all these paths fixed and using the variables instead of hardcoded values!

@hamiltont

This comment has been minimized.

Show comment
Hide comment
@hamiltont

hamiltont Nov 4, 2014

Contributor

Nice, looks good so far! Is there a date for 0.10, so we know when to rename Nimrod folder to Nim? If not, it would be great to have an issue tracking that so we don't forget

Contributor

hamiltont commented Nov 4, 2014

Nice, looks good so far! Is there a date for 0.10, so we know when to rename Nimrod folder to Nim? If not, it would be great to have an issue tracking that so we don't forget

@idlewan

This comment has been minimized.

Show comment
Hide comment
@idlewan

idlewan Nov 4, 2014

Contributor

No, there's no date planned (when it's done), but I'll be around to update it.

By the way, Travis didn't like when I tried renaming the Nimrod folder to Nim: it didn't verify it at all.

Contributor

idlewan commented Nov 4, 2014

No, there's no date planned (when it's done), but I'll be around to update it.

By the way, Travis didn't like when I tried renaming the Nimrod folder to Nim: it didn't verify it at all.

@hamiltont

This comment has been minimized.

Show comment
Hide comment
@hamiltont

hamiltont Nov 4, 2014

Contributor

I was hit by #1070 and postgresql's remaining connection slots are reserved for non-replication superuser connection.

Thanks for the info, and this is the correct "fix". When I have time to doc the limits I'll be sure to include that

Contributor

hamiltont commented Nov 4, 2014

I was hit by #1070 and postgresql's remaining connection slots are reserved for non-replication superuser connection.

Thanks for the info, and this is the correct "fix". When I have time to doc the limits I'll be sure to include that

@hamiltont

This comment has been minimized.

Show comment
Hide comment
@hamiltont

hamiltont Nov 4, 2014

Contributor

By the way, Travis didn't like when I tried renaming the Nimrod folder to Nim: it didn't verify it at all

yea, changing the names can be tricky due to how run-ci uses git to check for changes before verifying. If you can't get it or just want to pass it off, open an issue when you're ready and I'll take care of it when I've time

Contributor

hamiltont commented Nov 4, 2014

By the way, Travis didn't like when I tried renaming the Nimrod folder to Nim: it didn't verify it at all

yea, changing the names can be tricky due to how run-ci uses git to check for changes before verifying. If you can't get it or just want to pass it off, open an issue when you're ready and I'll take care of it when I've time

@idlewan

This comment has been minimized.

Show comment
Hide comment
@idlewan

idlewan Nov 5, 2014

Contributor

The Travis CI build passed for the impacted tests (Jester and Nawak).
The overall status is reported (Failed) because of the full rebuild necessary.

Contributor

idlewan commented Nov 5, 2014

The Travis CI build passed for the impacted tests (Jester and Nawak).
The overall status is reported (Failed) because of the full rebuild necessary.

msmith-techempower added a commit that referenced this pull request Nov 5, 2014

@msmith-techempower msmith-techempower merged commit adcdd71 into TechEmpower:master Nov 5, 2014

1 check failed

continuous-integration/travis-ci The Travis CI build failed
Details
@Vikaton

This comment has been minimized.

Show comment
Hide comment
@Vikaton

Vikaton May 20, 2015

Nim has been updated to 0.11.2, what does it take to update it?

Vikaton commented May 20, 2015

Nim has been updated to 0.11.2, what does it take to update it?

@idlewan

This comment has been minimized.

Show comment
Hide comment
@idlewan

idlewan May 20, 2015

Contributor

It's probably alright for jester, however nawak_mongrel is not yet compatible with it.

I guess you could take a look at https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/toolset/setup/linux/languages/nim.sh and have two versions of that file for Nim 0.10.2 and 0.11.2 (like python2/3 or java7/8 have) until nawak gets an update.

Contributor

idlewan commented May 20, 2015

It's probably alright for jester, however nawak_mongrel is not yet compatible with it.

I guess you could take a look at https://github.com/TechEmpower/FrameworkBenchmarks/blob/master/toolset/setup/linux/languages/nim.sh and have two versions of that file for Nim 0.10.2 and 0.11.2 (like python2/3 or java7/8 have) until nawak gets an update.

@Vikaton

This comment has been minimized.

Show comment
Hide comment
@Vikaton

Vikaton May 20, 2015

I also think it's a good idea to have bare Nim http server, which is very performent in 0.11.2

Vikaton commented May 20, 2015

I also think it's a good idea to have bare Nim http server, which is very performent in 0.11.2

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment