This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-05-20
Channels
- # adventofcode (7)
- # announcements (1)
- # aws (1)
- # babashka (127)
- # bangalore-clj (1)
- # beginners (54)
- # calva (8)
- # cider (12)
- # clj-http (2)
- # clj-kondo (8)
- # cljdoc (10)
- # cljs-dev (2)
- # clojure (48)
- # clojure-australia (14)
- # clojure-dev (6)
- # clojure-europe (105)
- # clojure-nl (6)
- # clojure-taiwan (1)
- # clojure-uk (62)
- # clojurebridge (1)
- # clojurescript (112)
- # code-reviews (4)
- # cursive (20)
- # data-science (1)
- # depstar (1)
- # events (8)
- # fulcro (6)
- # graalvm (11)
- # honeysql (2)
- # introduce-yourself (3)
- # jobs (1)
- # jobs-discuss (30)
- # malli (23)
- # nrepl (4)
- # off-topic (47)
- # pedestal (22)
- # polylith (10)
- # portal (3)
- # re-frame (16)
- # reitit (9)
- # releases (3)
- # rewrite-clj (1)
- # ring (1)
- # spacemacs (1)
- # tools-deps (12)
- # xtdb (7)
I’ve now added support for custom :tag-patterns
in workspace.edn
to the issue-66
branch so that changes can be tracked by project if needed (SHA=308eaed66a9f7ddb8592c09feade2856ae31cbc8).
An example can be found https://github.com/polyfy/polylith/blob/issue-66/workspace.edn.
I’m not following how that allows tracking by project? Also, what’s the :test []
list in the :projects
map? Is that where custom :tag-patterns
elements might also go (alongside :alias
and :test
)?
Hi Sean. The idea with`:test []` is that you can remove the test directories for some of your project (or only keep a set of them), e.g., if you think it’s enough to run the tests from one project (if you are quite sure that all tests are equivalent, regardless from which projects they are executed from) which saves execution time. The polylith repo uses that to only run the tests from the poly
project. If you have separate build pipelines for your projects in the Polylith monorepo, then you can have one entry in the :tag-patterns
per project to keep track of changes per project, and tag projects individually, e.g. {:stable "stable-*", :release "release-*", :myproject "myproject-*"}
.
Can you give an example of what would go in :test []
if you wanted some specific test directory?
And with the tags, where would :myproject
be referenced elsewhere?
Actually, you list the bricks in :test []
(but in the end, it’s about the test directories of these bricks). The you use since:myproject
or since:previous-myproject
when you run different commands.
Ah, OK. Examples in the docs will help make that clearer then. Cool.
I added it because we needed that functionality at work! When we have more experience around it, I will update the documentation.
I created an https://github.com/cursive-ide/cursive/issues/2554 for Cursive to better support issue-66.
I’m not following how that allows tracking by project? Also, what’s the :test []
list in the :projects
map? Is that where custom :tag-patterns
elements might also go (alongside :alias
and :test
)?
Hi Sean. The idea with`:test []` is that you can remove the test directories for some of your project (or only keep a set of them), e.g., if you think it’s enough to run the tests from one project (if you are quite sure that all tests are equivalent, regardless from which projects they are executed from) which saves execution time. The polylith repo uses that to only run the tests from the poly
project. If you have separate build pipelines for your projects in the Polylith monorepo, then you can have one entry in the :tag-patterns
per project to keep track of changes per project, and tag projects individually, e.g. {:stable "stable-*", :release "release-*", :myproject "myproject-*"}
.