Comments (6)
Thank you for the kind words @marksto!
it becomes possible to support that a workspace is used more than once, but with different settings
This is an idea I currently have, which would allow you to override e.g. test configuration settings. Another option is that each workspace only specify the workspaces they use, within their own workspace.edn
config. That is maybe a simpler solution, but may introduce code duplication. I will experiment with the different alternatives, and see what works best!
from polylith.
My current idea is that each workspace.edn will have a :workspaces
key where you can specify workspaces that you share code from, e.g.:
{:top-namespace "backend"
:interface-ns "interface"
:default-profile-name "default"
:compact-views #{}
:vcs {:name "git"
:auto-add false}
:tag-patterns {:stable "stable-*"
:release "v[0-9]*"}
:projects {"development" {:alias "dev"}}
:workspaces [{:alias "s"
:path "../shared"}]}
This means that every workspace will be self contained when it comes to configuration, and we don't need an omnipotent configuration file at the root of the workspace, as we discussed in ClojureScript support.
from polylith.
Hi @tengstrand! Having this feature in Polylith will be awesome! I remember our discussion about this in Slack just a few months ago. The pace of recent developments is astonishing. Kudos to you, Sean, Furkan and Lee Read!
One quick question, if you don't mind. Could you, please, hint at how this sub-feature can be useful? What can it give?
it becomes possible to support that a workspace is used more than once, but with different settings
from polylith.
Yes, that's the idea.
from polylith.
:workspaces [{:alias "s"
:path "../shared"}]
@tengstrand, hmm, so using relative paths for wss effectively means they also can successfully end up not being nested? I.e. having the following one-level file structure:
<root-dir>
- <ws-a> <— can reference bricks from b and c
- <ws-b> <— can reference bricks from a and c
- <ws-c> <— can reference bricks from a and b
from polylith.
👏🏻
from polylith.
Related Issues (20)
- Use cljdoc for the poly tool documentation
- Warn when there are deps with the same keys and different `:local/root`s HOT 1
- Consider making stand-alone installation easier on Linux & Windows HOT 1
- doc: minor update reminders HOT 1
- Support updating libraries to the latest version HOT 6
- When creating a workspace, honor user git config for default main branch name
- Cannot invoke "java.lang.ClassLoader.loadClass(String)" because "class_loader" is null HOT 1
- Update Edamame dependency to 1.4.25 HOT 1
- Switch workspace via shortcuts
- Support scanning tests in src directories HOT 7
- Support snippets of test configuration to be merged into settings HOT 2
- Add a validation that gives an error if we depend on bricks from a brick
- brew upgrade poly currently stuck on 0.2.18 version HOT 2
- Make sure :keep-lib-versions works when updating libs
- Cannot run poly tool in folder containing deps.edn (but no workspace.edn) HOT 2
- Enable the option to treat validation warnings as errors HOT 1
- Show warnings in the check and test command
- Add support for ClojureScript
- Support generating pictures with light background
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 polylith.