Skip to content

test with more Nim versions and with arm64 macos #152

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

Open
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

narimiran
Copy link
Member

No description provided.

@narimiran
Copy link
Member Author

@elcritch Can you take a look at this, please?

From the diff, it seems like there is some reordering happening with Nim 2.0.x:

--- a/expected/nim.cfg
+++ b/./nim.cfg
@@ -2,21 +2,21 @@
 --noNimblePath
 --path:"deps/nitter.zedeus.github.com/src"
 --path:"deps/supersnappy/src"
---path:"deps/packedjson"
---path:"deps/redpool/src"
 --path:"deps/karax"
 --path:"deps/markdown/src"
---path:"deps/jsony/src"
---path:"deps/oauth/src"
 --path:"deps/nimcrypto"
---path:"deps/httpbeast/src"
---path:"deps/redis.zedeus.github.com/src"
---path:"deps/jester"
---path:"deps/zippy/src"
 --path:"deps/flatty/src"
+--path:"deps/zippy/src"
+--path:"deps/jester"
+--path:"deps/oauth/src"
+--path:"deps/httpbeast/src"
+--path:"deps/packedjson"
 --path:"deps/sass/src"
---path:"deps/ws/src"
---path:"deps/asynctools.timotheecour.github.com"
+--path:"deps/redis.zedeus.github.com/src"
+--path:"deps/redpool/src"
+--path:"deps/jsony/src"
 --path:"deps/sha1"
+--path:"deps/asynctools.timotheecour.github.com"
+--path:"deps/ws/src"
 --path:"deps/dotenv/src"
 ############# end Atlas config section   ##########

I don't know how to approach this.

@elcritch
Copy link
Contributor

elcritch commented Jul 2, 2025

Yeah I ran into the same issue unfortunately and just stuck with Nim 2.2.x.

It's likely a difference with some iterator not being properly found and used. Potentially due to some difference in import or exports.

Something perhaps with one of these: https://github.com/search?q=repo%3Anim-lang%2Fatlas%20iterator&type=code

Could also be something to do with the toposorted:

proc toposorted*(graph: DepGraph): seq[Package] =

All the algorithms for loading the dependency graph should be stable. I've not seen any difference between the dependency graph between Nim 2.0.x and 2.2.x versions.

@Araq
Copy link
Member

Araq commented Jul 2, 2025

Isn't it as simple as using an OrderedTable somewhere instead of a Table?

@elcritch
Copy link
Contributor

elcritch commented Jul 2, 2025

Isn't it as simple as using an OrderedTable somewhere instead of a Table?

Possibly, but nothing stood out to me. OrderedTables are already used for the important pieces to retain order of dep discovery.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants