GithubHelp home page GithubHelp logo

Package manager? about streem HOT 28 CLOSED

matz avatar matz commented on June 9, 2024
Package manager?

from streem.

Comments (28)

nickmccurdy avatar nickmccurdy commented on June 9, 2024

👍 Looks good, as long as there's a central registry for packages. It's more complicated that way, but in my opinion it's harder to maintain packages when you can only get dependencies directly through version control systems or online downloads (for example, Go).

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I don't have a server with that kind of capacity though. Can you suggest something for that?

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

Also: I would like to have matz's opinion on naming. And I'm going to use JSON for config files. I have chosen to write it in C because it is more stable.

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

I run most of my open source web apps on Heroku. While some of their plans cost money, there is a free tier that I personally find pretty useful. However, I'm not sure if the free tier would be able to handle something of this capacity, and Heroku's dynos sleep when they're not in use if you're on the free tier.

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

I like river as a name. How about bucket (or something similar)? Since you can put some of the water in a stream into a bucket...

from streem.

tbodt avatar tbodt commented on June 9, 2024

👍

from streem.

JiechengZhao avatar JiechengZhao commented on June 9, 2024

👍
Hope to introduce namespace (e.g. matz/streem ) into the package manager. There is no such a thing in npm and the names of the packages are a bit mess.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I decided that (at least for the first version) I will use git. It will take the name of the package, and look on a organization called streem-lang for the packages. How about that?

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I don't have the money currently to host a server.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

While I'm still early on in the project, I'm going to move to Go.

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

@ChristopherDumas Would that mean that all packages (not just first party ones) would be in the streem-lang organization? If so, I don't like that, it makes things too strict, and it means that whenever GitHub is down, you can't safely deploy to production (which happens with Go's packaging). I like the idea of having a central registry where all the files for each package are copied too, which theoretically could be replicated in the future (this is what npm does). Of course, this requires more resources in terms of storage for the project. Maybe we could start by having packages link to sources somewhere else, and eventually there might be the ability to copy files if/when there is funding for it. That being said, Go sounds like a pretty good language to start with, it's fast, safe, and very good at handling concurrent networking.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I don't know.... I don't want to be the one paying for/maintaining the server that holds all our packages.......

from streem.

Velkitor avatar Velkitor commented on June 9, 2024

Could you build it like ruby's bundle. You can add alternate source files. If those files had strict format anyone could host one. The file would be a manifest of package names to package locations. Perhaps a simple JSON structure...

from streem.

shuichiro-makigaki avatar shuichiro-makigaki commented on June 9, 2024

Like!

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I'll work on getting it working with github, and then, once we get some funding or something, than maybe we could do something else. https://github.com/streem-lang/river

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

Cool, sounds good. I think we'll be fine for now. Besides, there are some major package managers that still don't copy the contents of packages into their registries.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

Alright! I've already got something working. The only problem is that when I run git, it replaces River's process.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

The only problem now is that there is only so far I can get withougt streem itself working!

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

I don't think we should worry about implementing the package manager just yet, especially since a few implementation and design designs will be based around how Streem will work.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

How about using JSON for the config files?

from streem.

naturalethic avatar naturalethic commented on June 9, 2024

Personally I like my configs to be written in the same language as the project I'm working on.

As far as hosting packages, perhaps let the author choose the host, and publish a url to a central directory instead of the whole package.

A bit of a more ambitious project would be to use p2p/bittorrent to distribute packages. Not sure that's ever been done yet, sounds fun.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

Currently I've actually got the Github thing done, as well as removing packages. My issue on Imports covers the problem I'm currently having. I've also already got the JSON config working, so until Streem is actually finished, I can't use Streem.

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

Currently, I've done:

  • river install author/name: Installs Streem package with same name and author from github
  • river remove name: Removes streem package that you name
  • river setup name: Interactive prompt to setup your project
  • river version: Version
  • river help: A help similar to this

I haven't done the bin and run commands because of the fact that Streem can't execute files yet. And I'm still wondering wether the install with no args command is even worth creating.

from streem.

matz avatar matz commented on June 9, 2024

Thank you for the effort. I like the name river.
But Streem is still very young. The package manager is not needed yet.
When the time is come, it will be a great tool for the language.

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

👍 Can we close this and continue development on River's repo when Streem has matured more?

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

Sure! Actually, I got very far, but I can't go much farther because streem isn't working yet, so you guys had perfect timing!

from streem.

nickmccurdy avatar nickmccurdy commented on June 9, 2024

Nice work. :)

from streem.

alexispurslane avatar alexispurslane commented on June 9, 2024

I'm currently reading up on Go, C, Bison, Lex, and Yacc on my kindle so maybe I can make some more useful contributions!

from streem.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.