Comments (11)
Duplicate of #74? Specifying a max version is difficult because the max version for a package version will most likely not have been released yet by the time the package version is released.
from packages.
Yeah this may be considered a duplicate. But if ever something is deprecated that a certain version of a package uses it would be nice to have proper error messages rather than something cryptic about this and that not being found
from packages.
It's hard to make that work though since packages are immutable by design. (Minor docs fixes were made, but adding a max version would not be a minor docs fix.)
from packages.
Well we could have it such that you are required to have a max version, which initially will be the same as the min version — and as Typst gets updated, you can push it back as far as you can. That way, packages never get a breaking change by limiting the supported versions, only expanding them
And besides, adding a maximum version should only need to happen if Typst itself introduces a breaking change, which should not happen often, and when it does; the motivation for it should also justify packages breaking
from packages.
The thing is that we can't update the version without publishing a new package. Packages are immutable and will be cached forever once downloaded.
from packages.
Closing in favor of #74
I don't think maximum version is possible.
from packages.
Minimum version is implemented now, see #74.
from packages.
Sorry for the necrobump, I'm having a hard time responding to things quickly lately, but
The thing is that we can't update the version without publishing a new package. Packages are immutable and will be cached forever once downloaded.
I did not realise packages are cached indefinitely; in that case, I think a good solution would be a 'target' Typst version, rather than a minimum. Using that, Typst could at the very least warn you if you're using a package targeting a different Typst version, and if you see it not working, you can figure out the connection there.
from packages.
But many packages will not be broken by updates and then you will get many unnecessary warnings. Basically, I don't want to add a manifest key that breaks a package even if it wouldn't have been broken.
from packages.
I get that, I guess I just don't want a package to be broken with no direct indication for that
from packages.
Could Typst only output a warning if it finds a version of that package that targets a more recent version of Typst?
from packages.
Related Issues (20)
- The package no longer works correctly in the latest version of Typst. HOT 1
- I think graph_plots seem to have issues with too large numbers in Visual Studio Code HOT 1
- How to: reference with @ HOT 2
- lovelace does not display captions correctly HOT 2
- circular arrows for self-pointing HOT 1
- Documentation Colorful-Boxes is incorrect HOT 1
- UDP Protocol typo
- typo in units.scv HOT 2
- Link to packages original github from the webpage HOT 2
- Macro in column operator increase newlines HOT 2
- Validate package repo link exists HOT 2
- Template containing different flavors HOT 1
- Tiaoma readme typo. Should I edit it inplace or publish a new version? HOT 1
- Description for cumcm-muban includes link to non-free font HOT 3
- Large packages in the current git-based package system? HOT 1
- system wide local packages HOT 2
- Allowing for a display name parameter in `typst.toml` for cleaner package listings in Typst Universe HOT 1
- Is it Ok to use git submodule for template in a package? HOT 1
- Invalid package folder is skipped without error
- Git submodules instead of monorepo 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 packages.