Comments (8)
I wouldn't say they are not well supported, but they don't nest nicely (i.e. one WORKSPACE per git repo?), and if you modify your own WORKSPACE to point at a local copy of some project "foo" instead of a remote one, you need to iterate over your other dependencies and also download and modify any of them which also point to that same "foo". For this reason, it makes a lot more sense to just either have one big project, or maybe some kind of easy switch to toggle between local/development or remote/stable (I've seen lots of projects that move their deps into a bzl file instead of WORKSPACE, and generally assume that this is why that is done, so you can share those, like maven poms? https://docs.bazel.build/versions/master/external.html#transitive-dependencies and the rest of the file discuss this a bit, but I haven't found any "best practices" docs that really dig in to this topic).
from elemental2.
Bazel calls the concept as recursive workspaces and they are working on proper support for it.
The design doc [1] discusses the current common practice under section called "The dependencies() pattern".
[1] they have https://github.com/bazelbuild/proposals/blob/master/designs/2018-11-07-design-recursive-workspaces.md
from elemental2.
We need some change for allowing that.
I've already make jsinterop-generator (used for generating the java classes) ready for bazel and j2cl: google/jsinterop-generator@26d5af7
I need now to make some change in this repo for using that change
from elemental2.
I'm also seeing this issue, but I'm able to fix it by changing jsinterop-generator locally to provide details on how to get args4j, and by changing this repo to load j2cl. As I'm on a mac, I also had to apply google/jsinterop-base#8 (and then of course change the http_archive etc rules to local_archive.
Edit: Oh sorry @jDramaix you're looking into this now to finish making the changes now required from the jsinterop-generator changes. Thanks!
from elemental2.
@niloc132 I want to note that I use two computers, one is a mac and the other is a linux one, and different issues and outputs are send from different computers.
from elemental2.
If you can wait few days, I should have time to fix everything. The WORKSPACE file need some love since j2cl is opensource
from elemental2.
@jDramaix Thank you!
@jDramaix @niloc132 Concerning nested workspaces, do I understand correctly that they aren't well supported by bazel? What's the right way to work with them? Just create a script and load all sub-workspaces from the root WORKSPACE file?
from elemental2.
bazel build ... now works (except if we have a temporary sync issue with extern file)
from elemental2.
Related Issues (20)
- elemental2-dom 1.0.0 has classes that are missing in externs, even in matching closure-compiler release HOT 2
- CanvasPattern does not have the setTransform method HOT 3
- Object Store could not created
- Deriving a browser API from WebIDL HOT 8
- Add support for WebRTC APIs
- WebGL constant type mismatch HOT 2
- how can you extract mutiple values from catch? HOT 1
- HTMLElement click() missing HOT 1
- Add an example to read/write indexeddb HOT 1
- Add Clipboard APIs HOT 2
- java.lang.UnsatisfiedLinkError HOT 2
- Instructions from README 'Build GWT compatible maven jar files' not working HOT 5
- Elemental2 wrapper for DOMParser HOT 8
- New release of elemental2 HOT 20
- Missing properties of HTMLTextAreaElement and TextMetrics HOT 6
- CSSProperties no LeftUnionType, TopUnionType, etc HOT 4
- Is there a good way to extend dom elements? HOT 4
- Add es6_proxy.js,w3c_pointerlock.js and w3c_gamepad.js HOT 4
- Add whatwg_encoding.js
- Add more DOM externs
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 elemental2.