Comments (6)
Do those projects have access to machines running those operating systems for development and CI? We don't currently have any in containerd, so it's hard to maintain support.
from console.
We can build containerd/console with GOOS=solaris GOARCH=amd64 go build ./...
. This does not require a machine running Solaris/Illumos.
The APIs used by containerd/console have existed for decades, and do not change. If they were to change, it would break a lot of existing software.
Therefore, building on solaris/amd64 is likely a sufficient test for now. The reverted commit already includes this build test for CI.
from console.
Do you know if there's actual users of the solaris builds on your side? Compiling is "one", but verifying everything works is another. The Solaris implementation in the code-bases (docker (moby), containerd, golang (including sparc support)) was carried out by the Oracle Solaris team at the time (who also ran test-infrastructure). That effort (and the team working on it) was sunset, after which much of the implementations went in disrepair.
While the implementation in this specific module may have "limited" impact (at least, currently), I know in other code-bases, the combination of build-tags became unwieldy fast, which can bring a lot of overhead when maintaining the code, and without a dedicated team working on Solaris support, that burden comes on "everyone else".
from console.
Do you know if there's actual users of the solaris builds on your side?
For my project, yes, for example see twpayne/chezmoi#1610 (OpenIndiana, i.e. Solaris/Illumos) and twpayne/chezmoi#2787 (not Solaris, but AIX, another old UNIX). I can't speak for the other users of the charmbracelet/bubbletea project, but given bubbletea is very popular, it's likely that several other projects indirectly rely on containerd/console's Solaris support.
While the implementation in this specific module may have "limited" impact (at least, currently), I know in other code-bases, the combination of build-tags became unwieldy fast, which can bring a lot of overhead when maintaining the code, and without a dedicated team working on Solaris support, that burden comes on "everyone else".
I agree with this sentiment, but would argue that a lot of low-level code (including, specifically, the C API calls required for console support) is stable and needs minimal maintenance. I would argue that the right time to stop support is when a change is required (e.g. a bug needs fixing or the code needs updating for refactoring or to support a new feature) and there is no one available to make that change. While the code is working without problems, it makes sense to keep it.
from console.
So a friendly fork is the likely outcome here. Of course, I would very much prefer that containerd/console restored the code that was working perfectly.
from console.
Related Issues (10)
- Copyright is missing
- Maybe more example ,please? HOT 2
- Create a release tag for console project HOT 2
- hitting weird error on go get HOT 10
- Cut a release HOT 4
- windows: Why `initStdios` ignores `GetConsoleMode` errors? HOT 1
- ec.Console.Read() return -1 on EAGAIN HOT 1
- Switch license to ALv2
- inappropriate ioctl for device
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 console.