Comments (10)
Note that a repository could have a different name to the main nimble file.
For example, take my repository euantorano/sever.nim
where the .nimble
file name is actually semver.nimble
.
I believe that the eventual plan was for the nimble directory to actually be the package source, rather than a large JSON file stored on GitHub. In that cause, authors would be submitting packages and we could probably ask them to provide the path to the .nimble
file on submission.
from nim-package-directory.
Note that .nimble files are not declarative, so extracting the version from them is not that simple. See e.g nimbles .nimble file, where the version number is imported from another module.
from nim-package-directory.
@euantorano Ok, but which purpose for naming like so?
(repo and package with different names)
And by the way, your repo has no releases yet.
Attempt to request curl -i https://api.github.com/repos/euantorano/semver.nim/releases/latest
will raise 404.
from nim-package-directory.
Note that .nimble files are not declarative, so extracting the version from them is not that simple. See e.g nimbles .nimble file, where the version number is imported from another module.
Yes, right. But I suggest a solution (in example) for cases where there is no real release (only tagged automatic release). I don't see in sources extracting the tag version (only release extracting request). And sadly, we can't assume that the tags are in chronological order.
[I've updated issue.]
from nim-package-directory.
@coocheenin Yes, because Nimble doesn't actuallly use GitHub releases when it does version resolution itself - it always looks at the .nimble
file for the package. It decides upon this file's name based upon the name of the project in the package repository JSON. THis has caused me some ehadache in the past wehn I've remembered to tag a release but not update the nimble file.
Regarding why I have a different name for the repository and the project, most of my Nim projects have a name ending in .nim
to allow me to easily filter them.
from nim-package-directory.
@euantorano I've understand. The only open question: Does it make sense to add code, typed above, to fetch_github_versions
as I've described in issue's [UPDATE] section.
from nim-package-directory.
from nim-package-directory.
Yes, it definitely needs improving in some way. I’m not sure what the best option is personally.
@euantorano Can I make a PR then? With additional check whether the target a number is (to avoid situation described by @GULPF).
from nim-package-directory.
I did it in async style, with additional isDigit()
check: 368b89f
But i have no idea about:
ci/circleci Expected — Waiting for status to be reported
from nim-package-directory.
GitHub's API does not provide the latest version anymore and it was also providing it based on date rather than a semantic on version numbers.
Fixed in f2f23d2 - now we are sorting GH tags semantically.
from nim-package-directory.
Related Issues (20)
- Package libsaedea missing readme on nimble.directory HOT 1
- Star count is not enough to tell if the project is live or dead HOT 9
- save and display search strings (with search count) HOT 2
- Expired SSL cert HOT 1
- Dark mode search text color is unreadable HOT 1
- nimble.directory is down - 502 Bad Gateway HOT 1
- Text in blockquotes has bad contrast HOT 1
- Hosted docs not displaying at all HOT 1
- Underscore in package name not shown in package directory
- Hosted Docs are either empty or cannot be loaded. HOT 1
- Nimble Into the Wild - Design ideas, talks, and previews HOT 13
- Feature request: Repology support HOT 3
- Incorrect version for package bigints HOT 4
- Package failing due to outdated nim version HOT 6
- An error has occured in one of your routes. HOT 5
- search mismatch HOT 1
- [FR] project type shown in search results, or filter for same. HOT 3
- Landing page - New Packages section
- tls cert expired HOT 1
- [FR] Automatically cache source code of packages? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from nim-package-directory.