Comments (4)
@ekeren I'm not sure I understand but maybe a synchronous discussion will help. 😄
BTW, I want to share one more example where I created my own Queue class:
bring cloud;
class Queue {
b: cloud.Bucket;
new() {
this.b = new cloud.Bucket();
nodeof(this.b).hidden = true;
}
pub inflight push(msg: str) {
this.b.put("file.txt", msg);
}
pub inflight pop() {
this.b.delete("file.txt");
}
pub inflight boring() {
log("this method does not interact with other resources");
}
pub setConsumer(fn: inflight (str): void) {
this.b.onUpdate(fn);
}
}
let b = new cloud.Bucket();
let q = new Queue();
q.setConsumer(inflight () => {
b.list();
});
The Queue
class has three inflight methods, push
, pop
, and boring
. boring
does not interact with any other resources.
Even though I do not have a cloud.Function
that is calling the push
or pop
methods on my class, to me it feels intuitive that the visual map shows the methods of the class I wrote.
To me what may be confusing is not all of my class's methods are shown - the Wing Console doesn't show there is a boring
method that can also be called.
from wing.
The oncreate handler should have a connection to the queue (via push) - (probably already covered by #6458)
I believe this will be fixed by #6509
Not to see putJson
I want to say this could be expected behavior, but I'm curious to learn what you'd like to see as a user.
Take this example:
bring cloud;
let b = new cloud.Bucket();
let q = new cloud.Queue();
q.setConsumer(inflight () => {
b.put("file.txt", "Hello World");
});
I never call the queue's "push" method in the app code. But the Wing Console shows "push()" in the map.
@ekeren I'm curious does this feel like the same problem to you? Or do you think the problem showing put()
and putJson()
is different?
(BTW, we could hide the inner function if needed so that it instead looks like the map below)
from wing.
I don't understand why push
is there, it is very confusing
I would expect to see a:
⚡️ consumer
Handler and nopush
from wing.
I'd prefer to have the public API of every class, too. The private methods, not that important IMO.
from wing.
Related Issues (20)
- Cannot read properties of undefined (reading 'emailIdentities')
- Merge to main only when the team's working hours HOT 1
- Cannot modify Wing Console display attributes of classes extending non-Wing constructs HOT 1
- Wing Platform overrides do not work on extended classes HOT 2
- Set secrets values in the Console HOT 2
- Tunnel links in Wing Console won't respect URL routes
- Refactor repo to turbo 2.0
- Improve Console map by reusing previous node positions in elk HOT 1
- Very confusing compiler diagnostics HOT 1
- Option to keep nodes expanded in node display HOT 1
- intrinsic function doesn't have struct expansion and signature completion
- wing run crash when using `@inflight(..)` on an un-existing file
- Clean our azure sdk tests account periodically HOT 1
- change the external retry in the sdk spec tests to the cli retry
- Add a section to the `wing-console` docs page explaining the capability of tunneling a URL
- Add JSII support for Wing libraries
- Application with a single resource should be expanded by default in the Console
- wingc code isn't re-compiled when running `pnpm wing compile/test` HOT 1
- Compiler panic when calling namespaced function within index expression
- Unable to call `.at()` with result of another function call
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 wing.