Coder Social home page Coder Social logo

shellpool's People

Contributors

jaredcdavis avatar kini avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

Forkers

kini

shellpool's Issues

Mac port

Sounds like I can get access to a mac mini for testing.

Make a test suite defsystem

Perhaps the right way for the test suite to work is to have it be a separate defsystem, i.e., shellpool-test. Bordeaux-threads apparently uses this model, so that may be a good place to look to see how it is done.

Tests of thread killing

A few things to do here:

  • See if we can use a simpler thread-killing approach (e.g., do we really need this pgrp stuff)
  • Develop tests of this stuff

Port to SBCL

We're stilling using CCL-specific code for running programs.

Ensure-like command

It would be nice to have a way to ensure that at least N shells are allocated, and only start up however many shells are needed to accomplish that.

Background jobs

Need to implement run-background and write some tests of it.
Want it to run commands in a sub-shell so that it can be robust, tolerant of shell errors, etc.

Quicklisp integration

Talk to Xach about how to get shellpool into Quicklisp, once it's ported to SBCL and ready.

Add some multithreading tests

Now that the kill tests have been simplified and made single-threaded, it would be good to have some explicitly multithreaded tests to make sure things still work there.

Investigate openbsd port

Installed openbsd on a virtualbox. Should be straigthforward... if the mouse would work right.

shellpool:run does not work as expected when *default-pathname-defaults* contains a space character

I've recently realized that I'm encountering an issue with shellpool when using the RUN function.

For some reason, if my *default-pathname-defaults* is set to a path that contains a space character like #P"/Users/areinisc/reasonable path/on-macOS/" (see "reasonable path"), then the function RUN does not behave as expected.

For example:

$ sbcl
This is SBCL 1.3.18...
* (ql:quickload "shellpool")
...
* (shellpool:ensure 1)

NIL
* (shellpool:run "echo hi")
bash: /Users/areinisc/reasonable: No such file or directory

127
* *default-pathname-defaults*

#P"/Users/areinisc/reasonable path/on-macOS/"

I would expect (shellpool:run "echo hi") to print hi to *standard-output* and then return 0, but instead I get an error message from bash and the error code 127.

Thanks in advance for any help with this issue!

echo -n

Shellpool doesn't seem to call the each-line function on the last line of output when running commands like echo -n hello. This seems like a bug.

Add customisation for bash process

It would be useful if an environmental variable might be customised by user during the bash start.
E.g.

(shellpool:start 7 :setenv '("FILENAME=/tmp/some-file.bat"))

In that way it would be possible to pass some pre-computing results into the pipeline.

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.