[1.12] Bump Telegraf

High-level description
What features does this change enable? What bugs does this change fix?
Corresponding DC/OS tickets (obligatory)
These DC/OS JIRA ticket(s) must be updated (ideally closed) in the moment this PR lands:

DCOS_OSS-4060 dcos-metrics API reports null values for system load
DCOS_OSS-4090 Missing expected container in response from /v0 API

Checklist for all PRs

[x] Added a comprehensible changelog entry to CHANGES.md or explain why this is not a user-facing change: this is a fix for an unreleased issue
[x] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Change log from the last version integrated (this should be a link to commits for easy verification and review): example
[x] Test Results: link to CI job test results for component
[x] Code Coverage (if available): link to code coverage report

@mesosphere-mergebot bump-ee

@mesosphere-mergebot bump-ee

@mesosphere-mergebot bump-ee

Superceded by https://github.com/dcos/dcos/pull/3515


About test

Hi, may I ask you a question?
How does your test_fcn32s work?
I can't find any trained model like *.pth used in your code.
Thank you so much!

It downloads from Google Drive: https://github.com/wkentaro/pytorch-fcn/blob/f6766058ad7968721f6217c378dff32716ee9fc6/torchfcn/models/fcn32s.py#L31-L37

well , that is not what I mean .
emmmmm , ask you later.
Thank you

Ah I see. Actually, the test does not use the pretrained model at the moment.


proposal: io: add RuneWriter interface

Proposal Details
Today i was surprised that io does not define a RuneWriter interface, it think that we should add one, considering that it is implemented by types in the std, also we already have a io.RuneReader interface and io.ByteWriter/io.ByteReader.
(*strings.Builder).WriteRune
(*bytes.Buffer).WriteRune
(*bufio.Writer).WriteRune
Proposed API:
type RuneWriter interface {
        // WriteRune writes the UTF-8 encoding of Unicode code point r,
        // and returns the number of bytes written. In case of an error
        // while writing, the WriteRune method might write part of a
        // UTF-8 representation of that rune.
        // If the rune is out of range, it writes the encoding of [utf8.RuneError].
	WriteRune(r rune) (int, error)
}

Related Issues

io: RuneReader interface should not be documented as a UTF-8 decoder. #49178 (closed)

Related Documentation

Package bufio > type Writer 				¶ 				 				 			 > func (*Writer) WriteRune 					¶

(Emoji vote if this was helpful or unhelpful; more detailed feedback welcome in this discussion.)

What do we gain from being prescriptive about UTF8 ?

I don't have a good answer for that, but in my use case, i am checking whether an io.Writer implements RuneWriter, if so i use it, otherwise i fallback to utf8.EncodeRune and the Write([]byte). In that case UTF8 makes sense.

If there's an io.RuneWriter interface, I would expect an io.WriteRune(io.Writer) (int, error) function to go with it.

If there's an io.RuneWriter interface, I would expect an io.WriteRune(io.Writer) (int, error) function to go with it.

FWIW currently we don't have a io.WriteByte(io.Writer) (int, error) for io.ByteWriter.

I think the argument against WriteByte is that it encourages small writes against a possibly unbuffered output. Though it would be handy for writing code that does a lot of writes to an arbitrary writer where the caller is responsible for ensuring any required buffering.
WriteRune would have to go in unicode/utf8, presumably just called Write in that case. (:+1:)

WriteRune would have to go in unicode/utf8, presumably just called Write in that case. (:+1:)

I wonder whether we want to import io in utf8, currently utf8 does not import anything.

Although it's not exactly the same, this proposal made me think of golang.org/x/text/encoding.
Specifically, encoding.Encoder provides a facility to transcode from UTF-8 to some other character encoding. In principle it could also offer a facility to transcode from a single rune to some other character encoding -- at least for the subset of character encodings that have a lossless roundtrip transform through Unicode -- although I acknowledge that the foundation it's currently built on is not really well-suited for individual rune transformation. (It's a stream transformer rather than a character transformer in particular.)
All of that is to say that I agree with the commentary above that this interface ought not to require that all implementers produce UTF-8. A specific implementation of this interface could decide to use UTF-8 as its output format. bufio.Writer in particular effectively implements this interface for UTF-8 around any other io.Writer, but implementations producing other character encodings would be viable too, and in particular x/text might want to somehow offer an implementation that wraps an io.Writer with an arbitrary character encoding, assuming there were some way to adapt its current UTF-8-bytes-specific design to work efficiently with individual runes. (I cannot say whether the maintainers of that library would actually want to offer that, of course... that would be a separate proposal.)


HTTPBackendRef RequestMirror Conformance Test

What type of PR is this?
/kind cleanup
/kind test
/area conformance
What this PR does / why we need it
There's currently no conformance test for this feature which is 'Extended'
Additional notes
I dropped path logic in filter so we can re-use the same test for the backend
NONE

/kind cleanup
/kind test
/area conformance

adding approvers
/assign @arkodg @mlavacca @sunjayBhatia
adding reviewers
/cc @LiorLieberman @michaelbeaumont @Xunzhuo

I've added back all the test cases for the regular filter. The backend filter has a subset of these cases.

has this been tested against any implementation ? afaik this easily possible on envoy based implementations

has this been tested against any implementation ?

I ran these tests against Istio. The backendRef variant fails as expected because they don't support that feature.

imo lets add conformance tests if at least 1 implementation supports this case.

imo lets add conformance tests if at least 1 implementation supports this case.

+1, I think it's pretty difficult to add conformance tests before at least one implementation supports a feature. If we were to do that, I think we'd need to introduce some concept of conformance test stability and consider untested conformance tests as a non-blocking reference point.

imo lets add conformance tests if at least 1 implementation supports this case.

But then an implementation can't advertise the support this feature on the GatewayClass. They'll have to wait for a new gateway api release to do this.

+1, I think it's pretty difficult to add conformance tests before at least one implementation supports a feature. If we were to do that, I think we'd need to introduce some concept of conformance test stability and consider untested conformance tests as a non-blocking reference point.

Then why is this functionality in the API?

Also the test is identical to the pre-split filter - so for this case I wouldn't be concerned with stability of the conformance test.

imo lets add conformance tests if at least 1 implementation supports this case.

But then an implementation can't advertise the support this feature on the GatewayClass. They'll have to wait for a new gateway api release to do this.

+1, I think it's pretty difficult to add conformance tests before at least one implementation supports a feature. If we were to do that, I think we'd need to introduce some concept of conformance test stability and consider untested conformance tests as a non-blocking reference point.

Then why is this functionality in the API? If we have the shape of feature in our API we can write conformance for it

I +1 what @arkodg and @robscott said about waiting to have at least one implementation on board with this feature. In my opinion, conformance tests are not intended to shape the API, but instead to validate API implementations. Regardless of the nature of the test (this test could be straightforward, as it shares the same logic of the requestMirror feature), we should wait for at least one implementation to properly run the tests, otherwise, the risk of having tests which are just a bunch of untested code is pretty high (I'm not saying it's the case of this specific PR, my concern is about the approach we want to have).

In a backlog grooming session, we went through this issue and discussed the need to define the status of conformance tests (experimental/GA). Shane is going to take a look into it.
/assign @shaneutt

ping @dprotaso


[DEPRECATED] [DO NOT REVIEW] Enhance UI tests to actually retrieve content from the plugin tab

UPDATE: #317 does it better, this PR is soon to be declined
Also, covers point 3. of #274:

Exclude com.virtuslab.gitmachete.frontend.actions.ideprobe.OpenTabAction from production builds of the plugin

A separate issue #312 has been added for an action that would open the tab; the existing OpenTabAction is now only suitable for use in tests.

Declined in favor of #317


There is no Date on mobile version of the event card!

Fix that @Debajyoti14 and if possible clean the UI a bit.

Date field added in Event Card
dev pr #122


Default env file should be ~/.envrc

I would recommend going to a default .envrc file, as this became some kind of defacto standard for environment files, with more and more tools supporting it.
For example direnv uses it and it can even load the best file to use based on current folder. The tool would look for the file in current folder and its parents until it reaches user home directory. This allows users to share env files across multiple projects.

I'm actually not familiar with .envrc - will have to look into it. On the other hand, what would you say about a workaround proposed here https://github.com/Ashald/EnvFile/issues/55#issuecomment-371002257 ?

Due to the lack of activity on this issue I will consider it to be resolved given that a workaround was proposed. Please feel free to reopen or submit another issue in case workaround does not sound like a good solution to you.

@Ashald The .envrc file is an shell script which is sourced automatically by multiple local env-management tools, especially http://direnv.net/. This could work the following way:

If .envrc file is present
If direnv executable is on $PATH
Do equivalent of (cd $PROJECT && direnv export json) and record the variables encoded in the returned JSON
Filter out env variables which start with DIRENV_
Set all the remaining environmental variables

A good inspiration would be emacs-direnv package:
https://github.com/wbolster/emacs-direnv


Flaky test fix: random bytes can look like base64

Coverage decreased (-0.05%) to 93.51% when pulling d99204369de371d79b4fe8d93603a5c260a027ab on JackDanger:jackdanger/flaky-test-fix---random-bytes-can-look-like-base64 into 902a35d5b99663042ff782f0996ca748671bd828 on spulec:master.


fix issue 716

fixes https://github.com/ada-url/ada/issues/716

It seems web-platform tests are failing with this change

@anonrig My fix is not correct.

@anonrig Annoyingly, it seems that we have to check for negative values separately. :-/ Latest commit should be correct.


doc: Add K8S flag to the example to add worker nodes

This doesn't affect the structure of the docs, so I think we're good to merge without the last review.

This doesn't affect the structure of the docs, so I think we're good to merge without the last review.


TypeScript statement completion with symbols does not always work

Issue Type: Bug
This is wonky.  I put together a small repo here https://gist.github.com/leidegre/e51afd311eb4d9729c3ea2a5e6411d3b
For example, here VS code is not giving me statement completion. I'm expecting to see FOO in the suggestion box.

but, if I move the symbol and type definition into a seperate file it does work

but this isn't consistent. I have in a larger codebase examples of where it still doesn't work reliably. I don't know why it works sometimes and sometimes not. it's functionally equivalent code.
also, apologies if this is better served by the TypeScript team but I thought I'd ask here first. I have observed this behavior for the past two years on both old and brand new systems. So it's been like this for a while but I'd like to fix that.

You can try this with F1 and >Developer: Reload Window With Extensions Disabled
Looks like in first case there are suggestions from IntelliCode extension visible first (stars before names) while in second case it's plain TS suggestions (no star before name)

(Screenshot from Untitled editor with TS 4.5, but shouldn't matter)
You can see FOO as only suggestion si
P.S. Please post code samples not only in screenshots to help other reproduce your issues because typing code from screenshot isn't fun.

No, it is not reproducible with extensions disabled. Though I have the same issue with the TypeScript playground and any embedded variant of Monaco that I have tested so far.
I'll see if I can narrow this down.

P.S. Please post code samples not only in screenshots to help other reproduce your issues because typing code from screenshot isn't fun.

There's a link to a gist with everything you need right there at the top.

It does work as I expect, if I disable Visual Studio IntelliCode visualstudioexptteam.vscodeintellicode.

I'll move this to the IntelliCode people, this is definitely begin caused by that plug-in.
It works if I disable the plug-in or if I use the following setting
{
  "vsintellicode.typescript.completionsEnabled": true
}

And there's a odd blank suggestion there... probably something they need to take a look at...

@IllusionMH do you know if this IntelliCode extension is installed by default? I'm kinda perplexed over why it has been installed the first place.
You can close this issue if you want. I just want an answer to that question. I'm going to create an issue with the IntelliCode people and reference this issue.

There's a link to a gist with everything you need right there at the top.

I'm sorry. My bad for missing it, thanks that you post everything and configs as well.

Though I have the same issue with the TypeScript playground and any embedded variant of Monaco that I have tested so far.

Yep, can reproduce in TS Playground, but not in CodeSandbox (which uses parts of VS Code under the hood).
Probably former doesn't use tsserver as VS Code does or there are some other differences in approach to get completions.
Issue for Playground can be raised here https://github.com/microsoft/TypeScript-Website/issues

do you know if this IntelliCode extension is installed by default? I'm kinda perplexed over why it has been installed the first place.

No, it's not installed by default. Clean VS Code installation comes with 0 extensions in "installed" section, and you can see all built-in extensions using @builtin filter in search field.
If you didn't install it manually then most likely as part of extension pack. Extension Pack for Java in your case.


fix(bug): sig table workspace filter fix

Some fixes for the signatures details group/workspace filter

@Fewwy LGTM


UI improvement brainstorming

@jmamma do you think it's a good idea to add graphics to the UI? I'm thinking about making a few icons, and improve the UI controls (possibly extract some common bits and build our own UI toolkit).

Sure. I've thought about this, at least for menus.
The Menu system already has screen space reserved for icons. Adding them in would be trivial.
What did you have in mind for improving the UI ?

Would love to see an improved sequencer interface
Value visualization -- those FLT abbreviations alone are a little bit heavy for me when I'm not in programmer mode. :)  Elektron does this by drawing the knobs, filter slops etc. as live icons.
Utilize knob 3 & 4 in grid page, probably one for range selection without holding the menu button
Meta comments about the pages -- the UI might be more intuitive if the spatial arrangement correlates with the physical layout, for example:

cool. I think we're on the same track here.
The ideas you've mentioned have all been in my mind at some point ;-)

oh and the page switch menu could use some icons

3 tracks on screen might not be a good idea... too few pixels and it's visually distracting.
But I do think 2 tracks will be helpful, with one button "Track A/B Switch", and a knob to indicate track nr.

Having labels for the button function would be useful. Not sure if we can cram everything on the screen without it looking cluttered.

I like the idea of showing circular encoders on screen instead of numerical values (where applicable)

There's loads of ideas here that we can explore.

There's loads of ideas here that we can explore.

YES.

Edit: track selection is actually a pain point for me in the current version. I have to exit editing mode, dial the right track on MD and then come back.

Yeah it's not perfect. But the trigger interface/exploit needs to be switched off if the user is detected changing tracks. Exploit breaks a few seconds after the display is updated. It made sense to train the user to switch tracks outside of the sequencer page to prevent the exploit from breaking.

my idea is that we could change track on MC not MD so we can programmatically exit/re-enter the hacked TI.

oh yeah, that would work. Hold down shift2 and then select trigger?
I also wanted a way of adjust length using the trigger buttons

actually... entering sequencer from grid: I always thought I'd end up editing the highlighted cell instead of the active MD track! :D

oh yeah, that would work. Hold down shift2 and then select trigger?

That'll do for me.
My other idea is, keep it consistent with the grid page that we have X/Y navigation even in sequencer page. We can even show a minimap of the grid in the sequencer mode

My other idea is, keep it consistent with the grid page that we have X/Y navigation even in sequencer page. We can even show a minimap of the grid in the sequencer mode
^^^

Yeah this could be a better implementation and allow intuitive access to the ext sequencer tracks

This is actually useful for that you can navigate both "horizontally in the grid" (track switching) and "vertically in the grid"(pattern switching)

Regarding y axis, are you suggesting that the sequencer pages don't edit the currently loaded tracks (workspace), but instead edit the selected tracks based on x,y location?

yes, kind of line online editing vs. offline.

need a way to differentiate workspace from grid space

how about, say if our coordinates x,y happen to land on the current workspace, the playback cursors show up?

If you can come up with a workflow that makes sense. ability to edit grid positions, but also intuitively edit the live sequence, then i'm up for it. This would presumably changes the way saving tracks occurs too.

Yeah.
I'll think about this now as I walk home from work. :)

how about, say if our coordinates x,y happen to land on the current workspace, the playback cursors show up?

I think in a live performance you dont want to be looking for the current track to edit the step sequence.
Loading tracks to edit them kind of makes sense at the moment. Thinking about this some more,  I'm not sure how useful offline editing is.

I'm out for the night.
Have a good 🚶

5b2281092d0b13c2b773d8a9c6d8ce59cd16cb10 in dev addresses track selection and pattern length

wow, amazing!
I'm gonna try this out!


example chat using EmbeddedIPFS

Ok last thing is to not vendor nabu jar. We should be using this how we think most people will want to. So we'll need to push a version of nabu and get jitpack to build it.


Network.getResponseBody fails for some pages (No resource with given identifier found undefined)

Steps to reproduce
Tell us about your environment:

Puppeteer version: 1.2.0
Platform / OS version: Windows 10
Node.js version: v9.9.0

What steps will reproduce the problem?
const puppeteer = require('puppeteer');

// Event types to catch
const events = [
  'Page.loadEventFired',
  'Page.domContentEventFired',
  'Page.frameStartedLoading',
  'Page.frameAttached',
  'Network.requestWillBeSent',
  'Network.requestServedFromCache',
  'Network.dataReceived',
  'Network.responseReceived',
  'Network.resourceChangedPriority',
  'Network.loadingFinished',
  'Network.loadingFailed',
];

async function run() {
  // Create headless session
  const browser = await puppeteer.launch();
  const page = await browser.newPage();

  // Enable events listeners
  const client = await page.target().createCDPSession();
  await client.send('Page.enable');
  await client.send('Network.enable');

  // Log network traffic and page domain notifications
  events.forEach(eventName => {
      client.on(eventName, async listenerFunc => {
          console.log(eventName, listenerFunc, '\n');
          if (eventName == 'Network.loadingFinished') {
              const { body, base64Encoded } = await client.send('Network.getResponseBody', { "requestId": listenerFunc.requestId });
              console.log(`RESPONSE [${listenerFunc.requestId}] BASE64 [${base64Encoded}] BODY >>>${body}<<< \n`);
          }
      });
  });

  // Do not work for "www.forbes.com", but works well for "www.kernel.org"!
  await page.goto('https://www.forbes.com', { waitUntil: ['networkidle2', 'load', 'domcontentloaded'], timeout: 10000 });
  await page.screenshot({ path: 'forbes.png' });

  //console.log('DIE'); process.exit();
  await browser.close();
}

run();

What is the expected result?
Passed without errors as for "www.kernel.org" (instead of "www.forbes.com").
What happens instead?
Errors occured for "www.forbes.com":
C:\Users\npetr\AppData\Roaming\npm>node forbes.js > forbes.log
(node:125168) UnhandledPromiseRejectionWarning: Error: Protocol error (Network.getResponseBody): No resource with given identifier found undefined
    at Promise (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:198:56)
    at new Promise (<anonymous>)
    at CDPSession.send (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:197:12)
    at CDPSession.client.on (C:\Users\npetr\AppData\Roaming\npm\forbes.js:33:60)
    at CDPSession.emit (events.js:180:13)
    at CDPSession._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:217:12)
    at Connection._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:117:19)
    at WebSocket.emit (events.js:180:13)
    at Receiver._receiver.onmessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\WebSocket.js:141:47)
    at Receiver.dataMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\Receiver.js:389:14)
(node:125168) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
(node:125168) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
(node:125168) UnhandledPromiseRejectionWarning: Error: Protocol error (Network.getResponseBody): No resource with given identifier found undefined
    at Promise (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:198:56)
    at new Promise (<anonymous>)
    at CDPSession.send (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:197:12)
    at CDPSession.client.on (C:\Users\npetr\AppData\Roaming\npm\forbes.js:33:60)
    at CDPSession.emit (events.js:180:13)
    at CDPSession._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:217:12)
    at Connection._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:117:19)
    at WebSocket.emit (events.js:180:13)
    at Receiver._receiver.onmessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\WebSocket.js:141:47)
    at Receiver.dataMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\Receiver.js:389:14)
(node:125168) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
(node:125168) UnhandledPromiseRejectionWarning: Error: Protocol error (Network.getResponseBody): No resource with given identifier found undefined
    at Promise (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:198:56)
    at new Promise (<anonymous>)
    at CDPSession.send (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:197:12)
    at CDPSession.client.on (C:\Users\npetr\AppData\Roaming\npm\forbes.js:33:60)
    at CDPSession.emit (events.js:180:13)
    at CDPSession._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:217:12)
    at Connection._onMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\puppeteer\lib\Connection.js:117:19)
    at WebSocket.emit (events.js:180:13)
    at Receiver._receiver.onmessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\WebSocket.js:141:47)
    at Receiver.dataMessage (C:\Users\npetr\AppData\Roaming\npm\node_modules\ws\lib\Receiver.js:389:14)
(node:125168) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 3)

@npetr resources get dumped after page commits navigation. This can be easily reproduced with the following pptr script:
const puppeteer = require('puppeteer');

(async () => {
  const browser = await puppeteer.launch();
  const [page] = await browser.pages();
  const response = await page.goto('https://example.com');
  await page.reload();
  console.log(await response.text());
  await browser.close();
})();

I'd recommend handling this error gracefully.

Is there some way to stall navigation until reading the response buffer is complete?

@mattzeunert you can intercept navigation requests and hold on responding however you want.

@aslushnikov Thanks, I'm doing that at the moment. The one downside I'm running into is that I can no longer access the encoded/gzipped content size.

@aslushnikov Thanks, that does work. Right now I'm using getResponseBodyForInterception to get the response body.
My only issue is that page.setRequestInterception(true); means I lose access to the actual encoded download size, so encodedDataLength is always 0.

@aslushnikov Do you happen to know where in the Chrome code I'd need to look if I wanted to disable dumping resources on navigation?

@mattzeunert you can intercept navigation requests and hold on responding however long you want.

That link is dead, how do I hold navigation requests?

Got the same problem as @dave-dm , any idea how to hold on the request intercept response when its navigation request? May I ask for any example code or any clue?

If anyone will come with the same issue there is a nice article around that: https://medium.com/@jsoverson/using-chrome-devtools-protocol-with-puppeteer-737a1300bac0, with some modifications You can intercept responses using dev tools protocol directly.

In more recent versions of Puppeteer (tested on ^21.2.1), this now manifests as
ProtocolError: Could not load body for this request. This might happen if the request is a preflight request.

which is reproduced by this code.


How to Specify the VM Image Version

I cannot find anywhere in the Azure Image Builder documentation about how to set the VM image version. It appears the default three part version is some sort of timestamp. I would like to be able to specify the version number when I generate the image versions. I see only a mention of the version format in a troubleshooting guide but no specifics on how to set it.
e.g.
The image version name should follow Major(int).Minor(int).Patch(int) format, for e.g: 1.0.0, 2018.12.1 etc.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 45a82eb4-6023-683b-50ad-eb5d5ffd9f4c
Version Independent ID: 672e6918-aa05-3f03-2497-1d3a6ac1488d
Content: Use Azure Image Builder with a gallery for Windows VMs - Azure Virtual Machines
Content Source: articles/virtual-machines/windows/image-builder-gallery.md
Service: virtual-machines
GitHub Login: @kof-f
Microsoft Alias: kofiforson

@brianstringfellow Thank you for your question!  I'm doing some research and will get back to you shortly.

@brianstringfellow We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.

@kobulloc-MSFT Thank you for researching how the use the version and for following up. I have applied the change to my setup scripts and it worked exactly as expected. The documentation seemed counter-intuitive to supply the resource ID for the VM image version before it was even created. I was looking for a separate parameter to pass to specify the version by itself. Thanks again!

@brianstringfellow No worries!  I was expecting something similar and it threw me off a bit as well.  I'm happy to hear that everything is working!


Update

Description
My Files App has an update, but every time i want to install it, it says: "Files has a problem that the developers were not prepared for."
Can you please fix this?
thanks
Steps To Reproduce

open the app Files
click on the blue download button in the up right corner
Files will now send you a message, that there is a problem and crashes.

Steps to fix
Fix crash that occurs when the download button which is available as soon as a new update is available is clicked.
Files Version
Version: <IP_ADDRESS>
Windows Version
Windows 11 22H2 22621.963
Relevant Assets/Logs
debug.log

This has been fixed with #10795 and in 2.4.8 I believe?

i dont know, but it is still there

I also can't update to the new version.
Or do you have to download it from the internet?

You can update from https://files.community/download


Add Shenyang institute of computing technology

Add Shenyang institute of computing technology, Chinese Academy of Sciences

@caiming100 Pull request merged.
Please notice that free educational subscription for JetBrains tools is for students and teachers only, and is valid for using the tools for educational purpose only. If employees of this Institute who are not students, nor teachers, also need a license for JetBrains tools, they are eligible for an academic discount for the tools. They can get the discount by email to<EMAIL_ADDRESS>Thank you!


Where is  the implementation about T step?

In paper "Human Pose Estimation with Iterative Error Feedback", T is the nuber of correction steps taken by the model. I didn't find the detail in the code. Please help me, thanks very much.

Hi,
Sorry for the delay, I am busy with some other projects right now. Unfortunately we have not implemented iterative error feedback paper. We tried implemented long back but could not get satisfactory results. I want to implement the work in future but right now I don't have time to delve into it.
Closing the issue, feel free to open it up again!


undefined: NullChatSyncer

When trying to install keybase client on a chromebook I get the following error:
baron@localhost ~/pkgs/go-path $ go get github.com/keybase/client/go/keybase
baron@localhost ~/pkgs/go-path $ go install -tags production github.com/keybase/client/go/keybase
github.com/keybase/client/go/libkb
src/github.com/keybase/client/go/libkb/globals.go:190: undefined: NullChatSyncer
It's a chromebook, ARM, running crouton with Ubuntu Yakkety.
baron@localhost ~/pkgs/go-path $ go version
go version go1.7.1 linux/arm

Sorry about this, we have a PR in the works.

Fixed in #6568. Thanks for the report.

Great, that works for me. Thank you for the quick response!


One drive search filter is not working for file and folder property

[Enter feedback here]
How to filter and list only files in the one drive item?
As per the document "filter=file ne null" 0r "$filter=file ne null" is not working in the search api end point and filter is not supported in the list drive items end point

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: f9b69523-6e05-fc2e-57c9-4ee861c8e0b2
Version Independent ID: 05845d47-c93a-7b9b-cb65-e18826cc5116
Content: How to filter items - OneDrive API - OneDrive dev center
Content Source: docs/rest-api/concepts/filtering-results.md
Service: one-drive
GitHub Login: @JeremyKelley
Microsoft Alias: JeremyKe

General Thoughts
I may be misremembering but there is a chance that the filter function just doesn't work for drive endpoints ... but at least you are getting an error. I am not sure why, though, maybe it is because you are technically using the search endpoint?
if the $filter option worked then you would use the isFolder property on the negative (ne).
Helping You
Either way, @SundarapandianBalasubramani, I know that it is not the point of this ticket, but maybe the following could help?
Perhaps if you can find the correct SharePoint Search terminology then none of this would be an issue, as you could put the filter conditions into your search. I am not awesome with search, though!


selenium.common.exceptions.NoSuchElementException: Message: Unable to locate element: //input[@type='file']

I'm experiencing this error. That's my script
from opplast import Upload
if __name__ == "__main__":
    upload = Upload(
        # use r"" for paths, this will not give formatting errors e.g. "/n"
        r"C:/Users/SpookyToad/AppData/Roaming/Mozilla/Firefox/Profiles/oysfbms4.selenium",
    )

    video_id = upload.upload(
        r"E:\mc_video\video.mp4",
        title="My YouTube Title",
        description="My YouTube Description",
        thumbnail=r"E:\mc_video\thumbnail.jpg",
        tags=["these", "are", "my", "tags"],
    )

    #if was_uploaded:
    #    print(f"{video_id} has been uploaded to YouTube")

    upload.close()

It says that error happens in script Upload at 80th line
    self.driver.find_element_by_xpath(INPUT_FILE_VIDEO).send_keys(get_path(file))
    sleep(self.timeout)

How i'm able to fix that?

This error usually appears when the page takes too long to load, or YouTube is asking you for something. Run with headless=False and see what happens.

Okay good news. I've fixed it by installing older version of firefox. Thanks for your fast response!


Add some way of tracking the relative vertical position in a file

It could look like a traditional scroll bar on the right edge of the screen.

Added in a2b2b327a05dc787962c44ffb2e73f9005f4d3d2 on unstable.


Data validation

I would recommend that the validation be done in a separate file instead of analysis.ipynb


API to mark request as closed

Add an api to mark request as closed. This can be used by other sites like keralafights.com to mark a request as closed.
Headers:
Authorization: Token <pregenerated_token>

POST /api/1/requests/<id>/close/

Authentication works using DRF's rest authentication. So we need to create an user for keralafights.com. Then create a token for that user from admin.

Any update on this?

@ragsagar there are multiple ongoing efforts to verify/validate requests, we might need to allow for multiple reports about a request. Eg: how to handle conflicting reports, or status of a report changing?

If we are allowing multiple requests, at which stage the status of order will change?

@ragsagar @shajith It's better to allow the person who created the request to close it as well.


Add text and descriptions to loading screen

Add 'initializing' class which can pump information to the loading screen.

https://github.com/clemahieu/raiblocks/issues/48


Updated ReportGenerator to v5.2.1

This version of the code coverage report generator has added a 'Crap Score' metric for Coberatura coverage files.
See release details for basic information regarding the changes.
After running the reports using the new version the following hot-spot where identified:

Assembly
Class
Method
Score

Common.Core
Classes.ModelData
SetSQLColumn
16

Converters.StringConverter
TryParse (bool)
16

Classes.ReflectionHelper
ApplyChanges
16

CreateDeepCopy
26

IsEqual
20

ProcessCollection
20

Models.Company
Equals
24

UpdateSQL
26

Models.Person
Equals
24

UpdateSQL
22

Configuration.Helper
AlphanumComparator
Compare
22

Logging.Helper
Logger
RemoveLogs
16

These need to be investigated and the score reduced to be under 15 (which is the default minimum value).
The minimum value can be adjusted but this is not recommended.
See Risk Hotspots settings for more information.

CRAP is short for Change Risk Anti-Patterns


Import of schema in build_schema_cache_async is not relative

When attempting to run build_schema_cache_async as a part of building the schema view, a ModuleNotFound exception is thrown on the import (first line) of build_schema_info and connection_schema_cache_key from the schema module.
Changing the following (relative import) fixes it for me.
from schema import build_schema_info, connection_schema_cache_key
...to...
from .schema import build_schema_info, connection_schema_cache_key
Not sure if this is a setup problem on my part or a real issue. Seems like I shouldn't be the first one seeing this. :/ . Otherwise, my setup is very basic, inline with the README instructions.

hello thanks for this amazing project , but do you have any news about django 2.0 ?

@maxiplux see #318


Fix dependencies to make the main library compile

The Piston example being built with 'cargo test' is also broken, probably needs a more detailed look. This fix should be enough to keep the library usable as a dependency.

Thanks very much for the fix.


build: Keep line tables in release builds

This allows for seeing line numbers on crash logs from release builds on sentry.io
Right now my stack traces on Sentry look like this which makes it incredibly difficult to figure out the root issue.

Seeing line numbers naturally simplifies the debugging process by a longshot. This comes at the cost of increased binary size, 7.6MB vs 7.6MB (ok sth might be wrong on Windows), as well as leaking information about the source code which given that the codebase is open-source is a non-issue.

Line numbers show up properly when testing on Linux :D

Not working on Windows, ugh

Confirmed working on two separate devices :D


implement periodic table endpoint

perhaps similar to info from cheminfo just return a dict with basic info.
should be something we can query based on atomic number, atomic symbol, and the name of the element


Validation triggered automatically

Hello,
My select fields seem to detect value changes before I even do anything.
I created a form using the form builder.
this.formGroup = this.fb.group({             country: [this.country, [Validators.required ]]        });
I subscribe to valueChanges of the form group.
this.formGroup.valueChanges.subscribe(() => this.onValueChanged());
My field should only activate its required message if it is invalid and dirty. (Same as the example in the reactive form validation in the angular cookbook).
On AfterViewInit, the field using ng-select is already dirty even if I did not touch it, causing my error message to appear  and valueChanges have been detected although I don't do anything.
When using the regular select of angular2, everything works fine.
Any help would be appreciated, thank you.

As a temporary solution I clear all errors in ngAfterViewInit.

For which version is this? I think this has been fixed in beta.6. See also the reactive form example on https://basvandenberg.github.io

I was using version 1.0.0-beta.2 of angular2-select.
I just updated to 1.0.0-beta.3 and it works fine.
Thank you for this!

The component has been renamed to ng-select and is currently at version beta.6.


fix(sheets): no style in blank cell

close https://github.com/dream-num/univer-pro/issues/993
close https://github.com/dream-num/univer-pro/issues/1770
close https://github.com/dream-num/univer-pro/issues/2069

Pull Request Checklist

[x] Related tickets or issues have been linked in the PR description (or missing issue).
[x] Naming convention is followed (do please check it especially when you created new plugins, commands and resources).
[x] Unit tests have been added for the changes (if applicable).
[x] Breaking changes have been documented (or no breaking changes introduced in this PR).

@Jocs#1770 1、选中链接单元格清除内容（或delete删除）
2、单击选中该单元格直接输入内容
预期：编辑态下输入内容也显示为文本
表现：编辑态下输入新的内容仍显示链接的格式，退出后显示为文本
2024_8_29 14_26_23 commands.json
2024_8_29 14_26_23 video.webm


Release/1.17.0

What does this PR do?
Merge 🏷  1.17.2 onto develop

Codecov Report

Merging #1322 (d87153b) into develop (69444e6) will decrease coverage by 0.23%.
The diff coverage is n/a.

@@             Coverage Diff             @@
##           develop    #1322      +/-   ##
===========================================
- Coverage    82.12%   81.89%   -0.23%
===========================================
  Files          361      361
  Lines        12852    12852
  Branches      2157     2157
===========================================
- Hits         10554    10525      -29
- Misses        1653     1664      +11
- Partials       645      663      +18

Impacted Files
Coverage Δ

...android/log/internal/logger/TelemetryLogHandler.kt
71.43% <0.00%> (-28.57%)
:arrow_down:

...id/rum/internal/ndk/DatadogNdkCrashEventHandler.kt
83.00% <0.00%> (-11.00%)
:arrow_down:

...in/com/datadog/android/log/internal/LogsFeature.kt
83.08% <0.00%> (-4.62%)
:arrow_down:

...d/v2/core/internal/storage/FileEventBatchWriter.kt
94.74% <0.00%> (-2.63%)
:arrow_down:

...rsistence/file/batch/PlainBatchFileReaderWriter.kt
83.08% <0.00%> (-2.31%)
:arrow_down:

...al/persistence/file/batch/BatchFileOrchestrator.kt
93.70% <0.00%> (-1.57%)
:arrow_down:

...lin/com/datadog/android/rum/internal/RumFeature.kt
92.03% <0.00%> (-1.45%)
:arrow_down:

...ain/java/com/datadog/opentracing/PendingTrace.java
59.48% <0.00%> (-0.86%)
:arrow_down:

.../android/rum/internal/domain/scope/RumViewScope.kt
93.77% <0.00%> (-0.35%)
:arrow_down:

...ndroid/telemetry/internal/TelemetryEventHandler.kt
75.00% <0.00%> (+0.78%)
:arrow_up:


TypeError: Can't convert 'bytes' object to str implicitly

I was following the streaming api tutorial and got this error. Other threads say it has been fixed.
Using master branch code.

Looks like this just needs to be initialized as bytes() instead.

Unfortunately, I still get the same error.
I replaced the line like you suggested and reinstalled, but that just gave me a different error.
Please help me out here, I'm kinda new to this stuff as well :)

fixed it with 2.7 version of python ...

Is this being worked on?  Using 2.7 doesn't seem like the right solution when the package is listed as supporting 3.3 and 3.4

I changed line 161 to
self._buffer += self._stream.read(read_len).decode('ascii')

and line 171 to
self._buffer += self._stream.read(self._chunk_size).decode('ascii')

and then reinstalled.

@cozos' fix works :+1:

Thx @cozos. Works for me too.

@cozos thanks! fixed for me as well!

I just got this error too with Python 3.4. The problem seems to be fixed in fix-556 six months ago(!) but hasn't been merged into master.

Same error. Has been working in the past.

Having this issue on a fresh install.

@cozos Hey man, that problem was solved, but a new problem came out at the same time...
Traceback (most recent call last):
File "D:\helloWorld\tweet_classifier.py", line 28, in
twitterStream.filter(track=["conference"])
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 430, in filter
self._start(async)
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 346, in _start
self._run()
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 286, in _run
raise exception
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 255, in _run
self._read_loop(resp)
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 309, in _read_loop
self._data(next_status_obj)
File "C:\Python34\lib\site-packages\tweepy\streaming.py", line 289, in _data
if self.listener.on_data(data) is False:
File "D:\helloWorld\tweet_classifier.py", line 18, in on_data
print(tweet)
File "C:\Python34\lib\encodings\cp1252.py", line 19, in encode
return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 44-47: character maps to
Having this issue on UnicodeEncodeError, how could I solve this one? Sorry I'm new to this...thanks for your help in advance!

@cozos Thank you. Your solution worked.

@cozos This fixes the problem. Thank you!  :+1:

Silly question maybe.... but after implementing @cozos fix, why do we need to reinstall? Would that not just reload the same broken version?  I implemented the fix to the api file and did not reinstall, so far so good.

@cozoz, thank you!
JSON format, which Twitter uses, encoded UTF-8.
So, it is better to change the lines to:
line 161:
self._buffer += self._stream.read(read_len).decode('UTF-8')
line 171:
self._buffer += self._stream.read(self._chunk_size).decode('UTF-8')

@Solaxun

Silly question maybe.... but after implementing @cozos fix, why do we need to reinstall?

The thought here is that you downloaded a copy of this repository, made the change in the copy of these files on your computer, and then you would install the changed files by running python setup.py install (or python3 setup.py install or whatever other command you have for python). This would copy the modified files into the system directories where python can find them.
As I don't believe tweepy has any compiled code it would be fine to find the files in their installed locations and edit them there, in which case reinstalling would obviously be counter productive. That said, I think modifying copies of the files and running the standard install procedure is probably a safer route to go.

Is there any particular reason that th @cozos fix can't just be merged into core?

This has been fixed and proposed in PR #635 (correctly with UTF-8 encoding and backwards compatibility for python 2.x) . It is up to the maintainer to merge that pull request, which I hope they will do quickly.

@amirush2001
Ah, I wasn't sure if I should use UTF-8 or Ascii but I suppose the answer is always UTF-8 these days. I suppose I'll amend my comment since people are using it, sorry :)

@amirush2001 your fix worked for me...

Yeah, I'm not thrilled that installing tweepy fresh through pip (3.4.0) in python 3.5 is broken and the readme says it supports 3.5.

@chisaipete sounds like there's a bug somewhere.  Perhaps rather than passive-aggressively complaining about it, you can submit a bug report or pull request to fix it?  This is a Free software project supported by people who do this on their own time.

I wasn't intending to put anyone down, I was simply commenting that the accepted fix which closed this issue is inadequate and the readme is inaccurate.  I suppose I should have been more explicit and diplomatic, my apologies.

@chisaipete pretty sure the fix works – but there hasn't been a new release with it, so you'll need to install from git rather than from pypi.

3.5.0 should have the fix

Hello everyone. I tryed to fix the lines on streaming.py and - after that didn't work - installed 3.5.0 from github. I still get the Type error: Can't convert 'bytes' object to str implicitly
I use Python 3.4

I know it's too late but, I hope this will work for upcoming users as well. I'm using python 3+ and I got similar problem when I was using following function
def str(self):
data = ("Name:" + self.name.encode('UTF-8') + "\r\n Developer: " + self.developer.encode('UTF-8') +
"\r\n Price: " + self.price.encode('UTF-8') + "\r\n")
return data
I made a few changes and it work perfectly for me.
def str(self):
data = ("Name:" + self.name.strip() + "\r\n Developer: " + self.developer.strip() +
"\r\n Price: " + self.price.strip() + "\r\n")
return data

This should be fixed with https://github.com/tweepy/tweepy/commit/22c0bc029546478da50c46100ad3804863138158 (#635), released with Tweepy v3.5.0.
Feel free to open a new issue if you can reproduce this with the latest development version.
@sean-hannon I'm surprised that no one has told you after all this time, but you're going to want to revoke and regenerate your keys and tokens if you haven't already.
@alexlu3211 This is an issue with your console's code page/encoding rather than an issue with Tweepy.
You're attempting to print a character outside the range that CP-1252 supports.
This is easily resolved by changing the active code page to UTF-8 using chcp and specifying 65001.

@Harmon758 I think I gave up and just went and used Twitter4J. It was for a college project so just wanted something that worked. Cheers for replying though.


Fixing French grammar and spelling

I just wanted to correct some French grammar and spelling (even though it is not a big deal).

Thanks


using camera 4*4 matrix from dust3r instead of theta, phi, r

hey! Thanks for this great work 👏
I was wondering if there was already an easy way to use another view of the same scene to create the animation from one to the other.
I thought about using the pair with dust3r to get the relative camera 4*4 matrix but didn't find an existing way to use this to get the trajectory.
Is this something that could be easily done with what is already in the repo?
Kudos for the release !

I have the similar issue. Is it possible to resist free camera movement in xyz space, like doing translation, instead of just moving around the center of the scene? Thank you.

Thanks for your interest! I guess you want to interpolate a trajectory between two or more views of a scene, which is exactly what our sparse view scripts can accomplish. We will release this code soon.

Thank you. Would you have an estimated time to release this part of code?

Thank you. Would you have an estimated time to release this part of code?

Hi, I will try to release it next week


[postgrescan] add dumping of user hashes

might be done through a simple call to pg_shadow table

Done ! thanks for the input


Add a flake for agda2hs

I've been using nix for CI and to build agda-core locally for https://github.com/jespercockx/agda-core and I had to write a derivation for agda2hs anyway, so I figured I'll push it upstream.
In the flake there are

agda2hs the executable (agda2hs)
agda2hs the agda library (agda2hs-lib)
a derivation to build agda2hs with agda libraries (withPackages)

I also added a CI builder for the nix derivations.
There's some weird behavior when we compile with ghc 9.4 using nix -- an instance of MonadError can't be found.
For this to happen one must do jailbreak, because otherwise aeson and transformers don't satisfy version requirements.
agda2hs> Error: Setup: Encountered missing or private dependencies:
agda2hs> aeson >=2.2 && <2.3, transformers >=0.6 && <0.7

Build log for ghc 9.4 with a jailbroken package
agda2hs> [ 4 of 23] Compiling Agda2Hs.Pragma   ( src/Agda2Hs/Pragma.hs, dist/build/agda2hs/agda2hs-tmp/Agda2Hs/Pragma.o )
agda2hs> src/Agda2Hs/Pragma.hs:79:45: error:
agda2hs>     • No instance for (Control.Monad.Error.Class.MonadError
agda2hs>                          TCErr
agda2hs>                          (Control.Monad.Trans.RWS.CPS.RWST
agda2hs>                             CompileEnv CompileOutput CompileState TCM))
agda2hs>         arising from a use of ‘genericError’
agda2hs>     • In the second argument of ‘($)’, namely ‘genericError msg’
agda2hs>       In the expression:
agda2hs>         setCurrentRange (srcLocToRange loc) $ genericError msg
agda2hs>       In a case alternative:
agda2hs>           Hs.ParseFailed loc msg
agda2hs>             -> setCurrentRange (srcLocToRange loc) $ genericError msg
agda2hs>    |
agda2hs> 79 |       setCurrentRange (srcLocToRange loc) $ genericError msg
agda2hs>    |                                             ^^^^^^^^^^^^
agda2hs> [ 5 of 23] Compiling AgdaInternals    ( src/AgdaInternals.hs, dist/build/agda2hs/agda2hs-tmp/AgdaInternals.o )
agda2hs> [ 6 of 23] Compiling Agda2Hs.AgdaUtils ( src/Agda2Hs/AgdaUtils.hs, dist/build/agda2hs/agda2hs-tmp/Agda2Hs/AgdaUtils.o )
agda2hs> [15 of 23] Compiling Agda2Hs.Compile.Function[boot] ( src/Agda2Hs/Compile/Function.hs-boot, dist/build/agda2hs/agda2hs-tmp/Agda2Hs/Compile/Function.o-boot )
agda2hs> [22 of 23] Compiling Paths_agda2hs    ( dist/build/agda2hs/autogen/Paths_agda2hs.hs, dist/build/agda2hs/agda2hs-tmp/Paths_agda2hs.o )
error: builder for '/nix/store/s9jv2y4ympsqlc4jrk60lhjxfv4rv6jl-agda2hs-1.3.drv' failed with exit code 1;
       last 10 log lines:
       >       In a case alternative:
       >           Hs.ParseFailed loc msg
       >             -> setCurrentRange (srcLocToRange loc) $ genericError msg
       >    |
       > 79 |       setCurrentRange (srcLocToRange loc) $ genericError msg
       >    |                                             ^^^^^^^^^^^^
       > [ 5 of 23] Compiling AgdaInternals    ( src/AgdaInternals.hs, dist/build/agda2hs/agda2hs-tmp/AgdaInternals.o )
       > [ 6 of 23] Compiling Agda2Hs.AgdaUtils ( src/Agda2Hs/AgdaUtils.hs, dist/build/agda2hs/agda2hs-tmp/Agda2Hs/AgdaUtils.o )
       > [15 of 23] Compiling Agda2Hs.Compile.Function[boot] ( src/Agda2Hs/Compile/Function.hs-boot, dist/build/agda2hs/agda2hs-tmp/Agda2Hs/Compile/Function.o-boot )
       > [22 of 23] Compiling Paths_agda2hs    ( dist/build/agda2hs/autogen/Paths_agda2hs.hs, dist/build/agda2hs/agda2hs-tmp/Paths_agda2hs.o )

However, with ghc 9.6 it builds without any hiccups (current default in nixpkgs, as of cb11f8)
There's also a devshell derivation that should be a superset of the current shell.nix, but I haven't tested it too much.
Examples of this flake's usage: https://github.com/liesnikov/scope/blob/master/flake.nix and https://github.com/liesnikov/agda-core/blob/flakes/flake.nix
Finally the dependency on mkAgdaDerivation is due to the fact that upstream agda derivation needs an Everything file which agda2hs doesn't have. I might file a PR to nixpkgs to fix it later but for now it lives in a separate repo.

In principle it's also possible to setup cachix for agda2hs builds to be cached across different runners/users, but that's a separate story.


Data Explorer chart does not render when count is on the Y axis

Repo instructions:

Install the latest raiwidgets package (0.18.2).
Run either Housing sample notebook ($/notebooks/responsibleaidashboard/responsibleaidashboard-housing-decision-making.ipynb or $/notebooks/responsibleaidashboard/responsibleaidashboard-housing-classification-model-debugging.ipynb).
Run the notebook and open the link to the dashboard once available.
In the Data Explorer panel, change the Y-axis to "Count".
Observe the graph is no longer visible. Switching to other Y axis values still show the graph.

This worked as expected in v0.17.

closing as PR https://github.com/microsoft/responsible-ai-toolbox/pull/1454 has been merged


Can't auto import component as Pascal Case when use script lang="tsx" in SFC

Environment

Operating System: Darwin
Node Version:     v18.15.0
Nuxt Version:     3.11.1
CLI Version:      3.11.0
Nitro Version:    2.9.4
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools, ssr, modules, unpluginHttpsReverseProxy, router, devServer, vite
Runtime Modules<EMAIL_ADDRESS><EMAIL_ADDRESS>unplugin-https-reverse-proxy/nuxt, unplugin-icons/nuxt<EMAIL_ADDRESS><EMAIL_ADDRESS>Build Modules:    -

Reproduction

Describe the bug
I use some element-plus component when I use tsx in SFC, but vscode ts-plugin error: ‘Can't find name "ElInput"'
when I manual import component like this import { ElButton, ElInput, ElOption, ElSelect } from '#build/components'; , then It is work.
Additional context
No response
Logs
No response

reproduction url : https://github.com/chenweiyi/mini-nuxt-repo
Additional explanation:

When I reference the components of element-plus in the lang=tsx file using PascalCase, vscode ts prompts that the component does not exist, but it does not affect normal operation.
When I change the component from PascalCase to kebab-case in the lang=tsx file, there are no ts type errors, and the page works normally.

By the way, I would like to ask, in react tsx, component names need to be capitalized, but is there no such restriction in vue tsx?

@chenweiyi is this reproducible without any nuxt module too?

Sorry, Do you mean this?

@chenweiyi yes, please remove any modules not needed to reproduce the problem if possible ☺

Ok, I have now removed all the modules and unnecessary dependencies, but the issue still persists.

This seems to be a limitation of TSX - though I wonder if there is something Volar could do, or maybe within Vue's types?

kebab-cased elements are handled as IntrinsicElements - we could augment this to provide type safe access.

pascal-cased elements are not resolved from the vue GlobalComponents interface. Even Vue global components are not resolved:

I think for now importing from #components is likely to be the safest approach. Alternatives could be both augmenting IntrinsicElements and registering components as globals but I'm not sure that is a good idea.
cc: @antfu in case you have any other ideas.

Any update?
Having to import the components manually is work 😕


neither npm nor yarn would install from source

Both break during either "nmp install" or "yarn" on downloading dependencies. Specifically, "git --no-replace-objects checkout 4.0" (npm) and "git ls-remote --tags --heads git://github.com/frozeman/WebSocket-Node.git" -- installed the latest git; added ssh identity. Still dep install isbroken.

we can use follow step to resolve problem:

“git config --global url."https://".insteadOf git://”
npm install

notes: the install must depend python2.5+, and < python3.0，follow step:

download python Python-2.7.2.tgz from python homepage
tar -zxvf Python-2.7.2.tgz
cd Python-2.7.2.tgz
./configure
make install

if happen error，is miss gcc，g++

apt install gcc
apt install g++


Python bindings

@daemontus Any idea why the CI doesn't work? I tried to implement the solution here but given the lack of a single error message I don't know if this is even the same issue.

The tarpaulin thing seems to be a known issue that can be fixed by changing  the engine: https://github.com/xd009642/tarpaulin/issues/1092
Also, it seems that PyO3 0.21 is now stable with a few extra deprecation warnings, so these are now fixed.

Some minor notes:

cd and source don't "really work" inside bash scripts because each command in a script actually runs in a separate shell process. So even though the directory/context technically changes, the change is not reflected in the next command. Using Python virtual environments is therefore a bit of a pain, but it can be done. In most cases, you can just use .env/bin/python3 instead of python3 (similar for pip) and everything works (i.e. you don't need to "activate" the environment). If you really need the environment to be active, you can activate it within the same command (see new local_dev.sh).

I changed gather_literals_rec to "return via argument". This is typically much more efficient since a new hash set is not needed for every recursive call.

I would use KeyError instead of ValueError when converting UnknownVariableWhileEvaluating. Key error is raised when a dictionary does not contain the requested value, which is also happening here. But this is a very minor nitpick :)

I changed the type of literal_values to a HashMap. PyO3 can do the same conversion for us automatically.

I turned the bindings into an optional feature. This means anyone depending on this Rust library won't have to depend on PyO3 by default (and more importantly, compile PyO3 :D). However, bindings should still be covered by CI because we use --all-features there.

Discussion question:
(1) I'd prefer evaluate, evaluate_checked and evaluate_with_default (with the option to set the default value for unknown variables) in the Evaluate trait. Setting unknown variables to false by default is a great way to amplify small bugs into hard to detect bugs. This would also affect evaluate_safe and evaluate_nonsafe. To a Python user, safe and nonsafe will be likely very foreign. We need to have a default evaluate method here (that can be also used to implement __call__) and throws an exception, and then evaluate_with_default in case they want a method that never fails. I'll prepare a PR for this.
(2) It would be nice if UnknownVariableWhileEvaluating could actually collect all invalid variables. This can quickly turn into a whack-a-mole for users if they have to fix errors one-by-one. But this is a very minor issue.
(3) What is PartialEq used for on PythonExpressionError and why is it implemented like this? (I understand that this is a valid partial equivalence, just not sure why we actually need it).
(4) I now believe that the type that we actually want for the expression is Expression(Arc<ExpressionData>) and then have a private enum ExpressionData { ... } with all the variants that we have now (using Expression instead of Arc<Expression> inside). That way, we can make methods like Expression.rename_literals that return a new expression when the content actually changed, and simply clone the Arc counter if the expression did not change. We could even consider just making Expression implement Copy and live with that. An obvious issue is that we cannot pattern-match on this. But maybe if the enum was actually public, we could still expose it's reference with something like expression.data() and pattern match on that. I am sorry it took me so long to realize this. I'll make a prototype to see if this is actually as useful as I think it might be.
Bottom line: I made a few minor updates but this is "reviewed" and can be merged. I'll be creating issues for the discussion questions to explore later.


Set speed is slow by about 1.94x

I am using a digital tachometer and am finding that setting the speed is off by about 1.94 times. Is this specific to my board's clock speed? It has been difficult to get specifics on my ESP32 board but I believe my clock speed is 240MHz.

the factor of 1.9 is way to high to be a clock speed issue. I assume you might have micro stepping activated on your driver or maybe you are using acceleration values that are too conservative. All hard to tell without any details on your setup.
I never measured the speed, to be honest, this part has been taken from the original FlexyStepper Library.
Still I believe there is a good chance the problem can be found in your stepper driver configuration and maybe general setup

I haven't tried FlexyStepper but I get the correct speed with AccelStepper. I am driving a Teknik Clearpath SDSK servo motor that takes step and direction input. The driver doesn't microstep but it does have variable steps per revolution. When I set ESP-FlexyStepper to the same steps per revolution as the motor, the speed seems to always be slower by about a factor of 1.9. I am charting various steps per rev settings and speed in steps to try to understand where the problem is. I still suspect there is a math problem somewhere in the library but it could very well be in my code. I'll let you know what I find.

to catch up on this topic here, I connected an Oscilloscope to the ESP and set the stepper on a long journey with 2000 Steps/Second (2khz) and measured the output. The generated signal was between 1.92 and 1.99 khz, so in the expected range (actually a bit low, but that might be due general jitter issue (I tested it by running the webserver in parallel and being connected to the websocket which generates some overhead and jitter).
So I can not measure a step rate that is to high as reported by 1.94 times, the step rate is actually pretty much in the expected range. Closing this issue for now since I cannot reproduce and it might be due to your specific setup / configuration. Feel free to reopen and provide some more details on your exact setup and configuration.


Adding code

@alhuang10 , do we need all the files? I see some 1,311 files added. E.g., framework.py and run_experiments.py are not needed here.


CFFL

CFFL

Linter check found the following problems:
The following problems have been found:
ERROR: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:16: pip_install_args: pip install should be run with --no-deps.
ERROR: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:21: missing_wheel: For pypi packages, wheel should be present in the host section
ERROR: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:38: missing_documentation: The recipe is missing a doc_url or doc_source_url
WARNING: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:38: missing_description: The recipe is missing a description
ERROR: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:38: missing_dev_url: The recipe is missing a dev_url
ERROR: /tmp/abs_7bz_7xmr8v/clone/recipe/meta.yaml:38: missing_license_family: The recipe is missing the about/license_family key.
Errors were found


Site down for last 6 days (26th Sept)

I looked at my feeds and it seems that there is a lot of entries missing from RSS site I am monitoring... Few today, but all of them missing from today and for last few days (last full day seems to be 20th September)...
Was site down or something?

Got any examples? Things are looking good from my end.


Replace deprecated exec_program

Using exec_program also led to a install: invalid arguments. error for me.
The cmake_minimum_required is a guesstimate.

Thanks!


Problems migrating to v5

Hi,
I've had a few problems upgrading to v5 (from v3).

Breakpoints stopped working, since they were unitless. (E.g 768 rather than '768px'). Not sure whether breakpoints are handled by styled-system or styled-components, but it may be good to mention in the migration guide?

My variants have been css strings, however these no longer work - every character now goes on its own line. I know I can rewrite the variants as style objects, but is dropping support for style strings intended and done for a reason? Code example:
theme.borderBoxes = {
  white: `
    background-color: white;
    border: 1px solid rgba(0,0,0,0.14);
  `,
};

is now added to the stylesheet as:
.iCnWRS {
  1: b;
  2: a;
  3: c:
  4: k;
  5: g;
  ...
}

defaultProps get rendered after props passed to a component. (Potentially #348 and/or #499? Not sure if the fix mentioned at the end of #348 is meant to be in v5.0.6) Example:
const Box = styled('div')(compose(space, layout));
Box.defaultProps = { m: 0 };

A Box rendered as such:
<Box mx="20px" />

gets css like:
.hPVxJS {
  margin-left: 20px;
  margin-right: 20px;
  margin: 0;
}

For #3, what if createParser were to iterate over config instead of props (see https://github.com/styled-system/styled-system/issues/499#issuecomment-503959544), to generate the same style order as v4 ?

Thanks for reporting! If you're not doing so already, I'd certainly recommend bumping one major version at a time to address the breaking changes incrementally.

Breakpoints stopped working, since they were unitless. (E.g 768 rather than '768px'). Not sure whether breakpoints are handled by styled-system or styled-components, but it may be good to mention in the migration guide?

Yes, all number values are no longer converted to px, the migration guide does not specifically call out theme.breakpoints, but it should

My variants have been css strings, however these no longer work

I think these might have worked before by accident, but it might be possible to support embedded CSS DSLs in the theme object (I'd accept a PR with tests if that's straightforward). Since the theme is an object, I'd highly recommend using object notation here though.

defaultProps get rendered after props passed to a component.

Yes, there does appear to be some sort of issue with this. I've asked for help with a PR with failing tests, but haven't had time to dig into it myself – this would require adding React to the test suite

I can confirm 3 (defaultProps).
Demo
https://codesandbox.io/s/styled-systembasic-demo-5pku3?fontsize=14
 <Content width={200} pl={1} pr="0px" py="0px">

pl and pr are working fine. But somehow py is rendered as 40px (defaultProp) instead of 0px.
const Content = styled.div`
  ${space};
`;

Content.defaultProps = {
  pt: '40px',
  pr: '15px',
  pb: '40px',
  pl: '15px',
};

oh man... we had a named breakpoints object with values as numbers. We were doing some other calculations based on these numbers, so the upgrade to v5 has really wreaked havoc!

Addressing the breakpoints in the migration guide in #642
Using strings for values in a variant in the theme object wasn't intentionally part of the API before, but if there's a simple way to make it work in v5, I'd accept a PR
m and mx are different props, and Styled System can't do much with how React works in that regard. I'd recommend not mixing conflicting CSS properties between the default props and element props

Closing this issue for now, but feel free to open any new issues if needed


user-defined axis attribute written incorrectly

Reported by ansley b manke on 13 May 2016 17:50 UTC
Martin Schmidt reported this
http://www.pmel.noaa.gov/maillists/tmap/ferret_users/fu_2016/msg00280.html
Defining a numeric attribute to write to a coordinate variable in a netCDF file, the values are corrupted.  Here's a short example

yes? use coads_climatology

yes? define att/output/type=float (`sst,return=xaxis`).newatt = {1,2,4}
 !-> define att/output/type=float (COADSX).newatt = {1,2,4}
           *** NOTE: Changing the value of attribute (COADSX).newatt
           *** NOTE: Changing the length  of attribute (COADSX).newatt
yes?  save/clobber/file=a.nc/L=1/x=180 sst
 LISTing to file a.nc
yes?  sp ncdump -h a.nc
netcdf a {
dimensions:
        COADSX80_80 = 1 ;
        COADSY = 90 ;
        TIME = UNLIMITED ; // (1 currently)
variables:
        double COADSX80_80(COADSX80_80) ;
                COADSX80_80:units = "degrees_east" ;
                COADSX80_80:modulo = " " ;
                COADSX80_80:point_spacing = "even" ;
                COADSX80_80:newatt = 0.f, 1.875f, 0.f ;
...

Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/2415

Comment by ansley.b.manke on 13 May 2016 21:26 UTC
This was some unfinished business in converting of Ferret from single to double-precision, for coordinate axes only. CD_WRITE_AXIS needs to call CD_WRITE_ATTVAL_DP which converts the data from its internal form to the requested output type


fix: controls event dispatcher types

Fixes #387 by maintaining our own copy of EventDispacher.

hi @RodrigoHamuy, I've just tried upgrading drei to latest three-stdlib but I have TS warnings:

Hi @abernier, really sorry about that.
I probably need some help as I am not sure what should we do. This PR made a copy of EventListener that three-stdlib uses for their controls, as the original one introduced a breaking change in their typings (link) as mentioned in this issue.
But in reality the original EventListener hasn't change in 3 years, only their typings got more restrictive since r168.
My understanding is that because three-stdlib aims as having backwards compatibility, we can't just upgrade to use the latest @types/three, but without doing all three-stdlib controls event listeners types will be never. This is what this PR attempted at fixing.
Is there another way to do this? I will have a play on my side too, but not really sure we can do anything else apart from actually asking @types/three to revert that change and allow loosely types again ( https://github.com/three-types/three-ts-types/pull/1145 ).
Maybe we should revert this commit in the meantime, sorry for the trouble.
CC @CodyJasonBennett

I believe that type error comes from R3F since now the types diverge. Maybe we can loosen it there.
https://github.com/pmndrs/react-three-fiber/blob/5a5080056fa00e81dba2e1cb922e9875ea545e48/packages/fiber/src/core/store.ts#L112

All we need is a small interface that is compatible with both types, although it doesn't matter whether controls emits events or not. It's an implementation detail of three's existing controls, but not user-land. It's possible we can loosen it to a very small interface.

hi @RodrigoHamuy, I've just tried upgrading drei to latest three-stdlib but I have TS warnings:

Is there a way to replicate these errors? I missed this because on my project at least everything is working OK after upgrading.

@RodrigoHamuy
yes, if you clone pmndrs/drei @ master and yarn add three-stdlib@latest, then yarn typecheck
you should have the same TS errors
@CodyJasonBennett like this?:
in pmndrs/react-three-fiber/blob/master/packages/fiber/src/core/store.ts:
- controls: THREE.EventDispatcher;
+ controls: Omit<THREE.EventDispatcher, 'addEventListener' | 'hasEventListener' | "removeEventListener"> | null;

if I understand correctly, this means a user can no longer controls = useThree(state => state.controls); controls.addEventListener(...) without a TS error? -- because, this is considered private methods?

I see that the transformControls is a bit more tricky as copying the native three implementation would require to put a lot of transformControls property to public so that it's "transformControlsRoot" has access to them.
https://github.com/mrdoob/three.js/blob/0f523acc5a1d6ae3d4d02a41f5d4793adc9303d5/examples/jsm/controls/TransformControls.js#L763

@CodyJasonBennett @abernier any thoughts on the 2 alternative solutions mentioned here? Neither of them would require changing react-three-fiber. Option 1 (revert @types/three to a more loosen typing) means also revert this PR, which I still think is the easiest, cleanest solution.

iiuc 1. depends on https://github.com/three-types/three-ts-types/pull/1398, whether it is merged or not, is that it?

i mean: it's not possible to revert if https://github.com/three-types/three-ts-types/pull/1398 is not merged, am i right?

Maybe let's open an issue since a revert is unlikely (it is equally breaking to change your mind), and we'd all be interested in a workaround or proper migration. I still think loosening the type on R3F's side would be the best course of action since we don't actually care about controls implementing events at all. It can extend as simple as an opaque object type.

I meant either an opaque type that implemented event listener methods without generics or an object like that. This still might be too strict since people may implement their own interface with parameters; again, I think controls both shouldn't be in R3F to begin with, and the type being an irrelevant and inconsistent constraint—assuming that all controls follow three/examples, which is certainly not the case.
// file: https://github.com/pmndrs/react-three-fiber/blob/master/packages/fiber/src/core/store.ts#L112
- controls: THREE.EventDispatcher | null
+ controls: {
+   addEventListener(type: string, listener: (...args: any[]) => void): void
+   hasEventListener(type: string, listener: (...args: any[]) => void): boolean
+   removeEventListener(type: string, listener: (...args: any[]) => void): void
+   dispatchEvent(event: any): void
+} | null

If #392 can create a compatible overload, then let's roll with that. Still, I'm unhappy with R3F taking such opinions over user code.

@CodyJasonBennett fair enough. In that case I leave it with you to decide between these (I didn't added the loosing types of the R3F store because I'm worried it will snowball this bug even more):

option A
https://github.com/pmndrs/three-stdlib/pull/392
+
https://github.com/pmndrs/drei/pull/2276
option B
https://github.com/three-types/three-ts-types/pull/1398
+
revert https://github.com/pmndrs/three-stdlib/pull/388

My personal preference is still option b since it reduces bundle size (we don't need to keep our copy of EventDistpacher), we stay more closely aligned with three/examples events, and (unless people updated very very recently) it means no changes at all for them or our APIs.


chore(main): release 1.3.0

:robot: I have created a release beep boop
1.3.0 (2024-03-07)
Features

introduced new property type StringMapProperty (useful for modeling e.g. properties/labels) (91538fb)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/idlab-discover/rsql-utils/releases/tag/v1.3.0 :sunflower:


Update indicatif to 0.17.0-rc.5

There were some break changes in indicatif, the crates.io release version of xwin doesn't compile now.
$ cargo install xwin
...
error[E0599]: no method named `progress_chars` found for enum `Result` in the current scope
   --> /Users/messense/.cargo/registry/src/github.com-1ecc6299db9ec823/xwin-0.1.7/src/splat.rs:563:18
    |
563 |                 .progress_chars("█▇▆▅▄▃▂▁  "),
    |                  ^^^^^^^^^^^^^^ method not found in `Result<ProgressStyle, indicatif::style::TemplateError>`

For more information about this error, try `rustc --explain E0599`.

Thanks for the PR! In the future you can use cargo install --locked to avoid cargo's broken behavior. https://github.com/rust-lang/cargo/issues/7169


Default Value for Valid IO

Hi All,
What is the default value for valid signal in ValidIO?
While testing a design, I am seeing tester picking up any of 1 and 0.
Do we need to assign default value for valid signal?
Regards,
Preyas

Currently unconnected lines are randomized, which probably explains what you're seeing.
There's a proposal that will have the compiler detect unconnected lines not explicitly marked as not-connected and error on those, but that's not implemented yet.

Superseded by #413


Homepage view breaks when locale is used

SS 3.1.2 / Fluent 3.2.1 (using aliases) / CWP 1.0.7 (w/Translateable) PHP 5.5.9
The Problem:

Navigating to the homepage (clicking or futzing the URL) results in 404
Seems to be to do with FluentRootURLController::handleRequest() line 93

If I dump $localeURL.'/'.RootURLController::get_homepage_link().'/' which is passed as a param to $request->setUrl() I get: en/en/home/ and the page results in a 404 with the debugging removed.
This seems to be because RootURLController::get_homepage_link() is taking account of "Translateable" and appending the extra aliased locale from (decorated) SiteTree::$current_locale which Fluent also utlises.
The fix for me is simply to add SiteTree::remove_extension('Translatable') to mysite/_config.php which I think should be "Recommended" in Configuration.md, as it's currently buried in translatable.md which I hadn't read because (and call me pedantic..) I wasn't actually "Migrating"...thoughts?

Honestly, I haven't tested this module alongside translatable. My feeling
is that these modules both try to do much the same thing, but in
fundamentally incompatible ways.
I have heard that users have had success with fluent and subsites, however.
Is there a fix we can apply to the root controller that adds the special
exemption for translatable, maybe?
You can also replace the root controller via injector if you want to
include logic custom to your project.
On 15 Jul 2015 10:39, "Russell Michell"<EMAIL_ADDRESS>wrote:

SS 3.1.2 / Fluent 3.2.1 (using aliases) / CWP 1.0.7 (w/Translateable) PHP
5.5.9
The Problem:

Navigating to the homepage (clicking or futzing the URL) results in
404
Seems to be to do with FluentRootURLController::handleRequest() line
93

If I dump $localeURL.'/'.RootURLController::get_homepage_link().'/' which
is passed as a param to $request->setUrl() I get: en/en/home/ and the
page results in a 404 with the debugging removed.
This seems to be because RootURLController::get_homepage_link() is taking
account of "Translateable" and appending the extra aliased locale from
(decorated) SiteTree::$current_locale which Fluent also utlises.
The fix for me is simply to add SiteTree::remove_extension('Translatable')
to mysite/_config.php which I think should be "Recommended" in
Configuration.md, as it's currently buried in translatable.md which I
hadn't read because (and call me pedantic..) I wasn't actually
"Migrating"...thoughts?
—
Reply to this email directly or view it on GitHub
https://github.com/tractorcow/silverstripe-fluent/issues/125.

@tractorcow I'm not convinced replicating RootURLController via Injector  is particularly DRY, so how about something like the following in FluentRootURLController:
    /**
 *
 * @param string $localeURL
 * @return string
 */
public static function fluent_homepage_link($localeURL) {
    $link = parent::get_homepage_link();
    if(class_exists('Translatable')) {
        $locale = Fluent::get_request_locale();
        if(stristr($localeURL, $locale) !== false) {
            return $localeURL;
        }
    }

    return $link;
}

....this would be called as follows on line 93:
$request->setUrl(self::fluent_homepage_link($localeURL).'/');

...basic testing suggests it seems to work (Disabling Translatable seems to kill a CWP website :-(

This seems to be because RootURLController::get_homepage_link() is taking account of "Translateable" and appending the extra aliased locale from (decorated) SiteTree::$current_locale which Fluent also utlises.

Can you please add a comment to this effect in the code of your pull request?


Correctly validate characters in semantic version identifiers

Semantic Versioning 2.0.0 allows only ASCII alpha-numeric characters and "-" in identifiers.
This change makes version initialization more restrictive, so it might be source breaking.
Same as apple/swift-package-manager#3839, but for TSC's Version.

@swift-ci please smoke test

@swift-ci please smoke test

@elsh please help review this one

Changed this PR to a draft, because I'm going to do a new PR using throwing initializer as @tomerd suggested.
I'm leaving this draft open until the new PR is opened to gather additional reviews/suggestions.


Insert tox env name into all gdb_test.py log files

/morph test

tox?

https://pypi.org/project/tox/

/morph test

/morph test


LSC prototype: smart indent

Code is in AutoIndent.cs and SmartIndentProvider.cs

Tokenizer.CurrentState property was removed, we need to add that back in PLS.
        public object CurrentState => _state;

PythonKeywords in PLS should be made public again, in parsing assembly.

Done


Why detail::compact_storage?

I forgot to ask this before the review, so I'm asking now: why do you have your own helper that employs EBO rather than using boost::empty_value from Core?

Actually, it looks like empty_value only works for empty types while compact_storage works for all non-final classes. The difference is that even if the class is not empty, compact_storage allows to place new data members in its tail padding. Hence the "compact" in the name. So I won't be switching to empty_value after all.


Load trained weights into agent and get predicted actions

Hello, thanks for sharing this amazing piece of work!
Is there an easy way to load the trained weights from the checkpoint.pkl into an agent and get the predicted action from it (agent.policy(obs, state, mode='eval'))['action']). The idea would be to visualize online in a standard pygame loop for instsance?
Looking at the code, I guess the easiest would be to use the dremerv3.Agent  class, but I don't understand how to load the weights from the pickle file :sweat_smile:

If you want a script that runs the agent in inference mode on one of the environments, you can fork embodied/run/train.py and remove the agent.train(), train_fill, and checkpoint.save() parts. There are other parts you can remove if you like, like the timer that collects profiling information and the per_episode() function that write episode metrics. You can then add that run script as an option to dreamerv3/train.py.
If you're just after a minimal snippet for calling the policy, you need to create the agent (which requires obs/act spaces, step, and config) and the checkpoint object from embodied/run/train.py (which requires agent, step, and replay) and call checkpoint.load(). Then you can use act, state = agent.policy(obs, state) where state = None for the first call.
In the latter case, I can make it easier so you don't need to give the checkpoint object a replay buffer but for now you can either create one or use a dummy Python object that has a load(self, data) method.

Hey, I updated the checkpoint code and run scripts to make this easy. You can now train an agent as normal:
python dreamerv3/train.py --run.logdir ~/logdir/train --configs crafter --run.script train

And then load the agent to evaluate it in an environment without further training:
python dreamerv3/train.py --run.logdir ~/logdir/eval --configs crafter \
  --run.script eval_only --run.from_checkpoint ~/logdir/train/checkpoint.pkl

You also asked for a minimal example to load the agent yourself. The relevant code is in dreamerv3/train.py and run/eval_only.py and boils down to:
env = ...
config = ...
step = embodied.Counter()
agent = Agent(env.obs_space, env.act_space, step, config)
checkpoint = embodied.Checkpoint()
checkpoint.agent = agent
checkpoint.load('path/to/checkpoint.pkl', keys=['agent'])
act, state = agent.policy(obs, state, mode='eval')

Great, thank you so much. Will try it tomorrow.

Hello ! Any idea how the initial state should be formatted? I am trying to run from the minimal code you provided above with a gym environment. However:
env =   # Replace this with your Gym env.
env = from_gym.FromGym(env)
obs=env._env.reset()
obs=env._obs(obs, 0.0, is_first=True)
obs = {k: embodied.convert(v) for k, v in obs.items()}
act, state = agent.policy(obs, state=[None], mode='eval')

returns an error.
From the policy() function I can see that it is expecting:
def policy(self, obs, state, mode='train'):                                              │
│    52 │   self.config.jax.jit and print('Tracing policy function.')                              │
│    53 │   obs = self.preprocess(obs)                                                             │
│ ❱  54 │   (prev_latent, prev_action), task_state, expl_state = state

Is there a way to initialize the state?

You can just pass in None as the first state and from then on pass back the state that it returns.
This is done in jaxagent.py.

@ThomasRochefortB did you manage to run the minimal snippet successfully?
On my side, I run into an error that seems to come from the observation data being not formatted as expected when passed to the agent policy.
Here is what I did:
Training, everything work well:
python dreamerv3/train.py --logdir ~/logdir/test_1 --configs crafter

And then, when I try to run the minimal snippet inference like that:
LOGDIR = Path('~/logdir/test_1')
config = embodied.Config.load(str(LOGDIR / 'config.yaml'))
env = crafter.Env()  # Replace this with your Gym env.
env = from_gym.FromGym(env)
env = dreamerv3.wrap_env(env, config)
# env = embodied.BatchEnv([env], parallel=False)

step = embodied.Counter()
agent = dreamerv3.Agent(env.obs_space, env.act_space, step, config)
checkpoint = embodied.Checkpoint()
checkpoint.agent = agent
checkpoint.load(str(LOGDIR / 'checkpoint.ckpt'), keys=['agent'])

obs = env._env.reset()
obs = env._obs(obs, 0.0, is_first=True)
obs = {k: embodied.convert(v) for k, v in obs.items()}
state = None

while True:
    act, state = agent.policy(obs, state, mode='eval')  # error comes from that line
    acts = {k: v for k, v in act.items() if not k.startswith('log_')}
    obs, reward, done, _ = env.step(acts)  # act['action'])

I get an error at jaxagent.py line 144: IndexError: tuple index out of range.

@jobesu14 I think the issue in your snippet is that the policy expects a batch size.

I didn't maange to make the above snipets work. I kept having issues with the parameters of the agent initial_policy calls.
Here is what worked for me
Basically adding a callback for each step in the embodied/run/eval_only.py script. It is a very minimal change to the original codebase and it also decouple quite nicelly the inner working of Dreamer from the pygame rendering code.
Hope this helps.

@danijar Any chance you've been able to figure out rendering from your snippet above? This still produces the error mentioned above for me. It would be amazing to have code for example.py that can generically render gym environments for evaluating trained policies.

If you env returns an image key as part of the observation dictionary, it will already get rendered and can be viewed in TensorBoard. Does that work for your use case?

Thanks for such a great research algo @danijar! Wondering if there's any good way now to render the AI playing the game?

After 2 long days, found the answer based on this issue! Leaving here for anyone who wants to render their DRL AIs playing:
In from_gym.py, add the 4 lines that start with plt:
import matplotlib.pyplot as plt

  def step(self, action):
    if action['reset'] or self._done:
      self._done = False
      obs = self._env.reset()
      return self._obs(obs, 0.0, is_first=True)
    if self._act_dict:
      action = self._unflatten(action)
    else:
      action = action[self._act_key]
    obs, reward, self._done, self._info = self._env.step(action)
    plt.imshow(obs)
    plt.show(block=False)
    plt.pause(0.001)  # Pause to ensure the plot updates
    plt.clf()  # Clear the plot so that the next image replaces this one
    return self._obs(
        obs, reward,
        is_last=bool(self._done),
        is_terminal=bool(self._info.get('is_terminal', self._done)))

I'm not sure if this issue could still be focused, but here is my question:
when I run this part of code

logdir = embodied.Path('~/logdir/test_1')
config = embodied.Config.load(logdir / 'config.yaml')
env = crafter.Env()
env = from_gym.FromGym(env)
env = dreamerv3.wrap_env(env, config)
step = embodied.Counter()
agent = dreamerv3.Agent(env.obs_space, env.act_space, step, config)
checkpoint = embodied.Checkpoint()
checkpoint.agent = agent
checkpoint.load(logdir / 'checkpoint.ckpt', keys=['agent'])
state = None
act = {'action': env.act_space['action'].sample(), 'reset': np.array(True)}
while True:
obs = env.step(act)
obs = {k: v[None] for k, v in obs.items()}
act, state = agent.policy(obs, state, mode='eval')
act = {'action': act['action'][0], 'reset': obs['is_last'][0]}

I will get this error at the line  "config = embodied.Config.load(logdir / 'config.yaml')"

AttributeError: 'LocalPath' object has no attribute 'read_text'

It turns out there is no "read_text" in LocalPath class at /core/path.py. Is there any update about this code?


Make a timeline

Скласти список всіх (важливих) життєвих подій, визначних дат, досягнень, періодів, що дали приємний і неприємний досвід, тощо. В цьому конкретному випадку довгих списків не буває, натомість бувають погано згорнуті, тому пакуємо сюди все підряд, а про “лишні” події можна буде промовчати пізніше. Список повинен бути систематизованим і посортованим в такий спосіб, щоб читач швидко зрозумів “паттерн” і міг легко орієнтуватись в просторі і часі цього резюме.

About Me: In other words, "Who am I, beyond my resume"
Hello! My name is Inga. In this short blurb, I'll tell you a bit about myself, informally. So, what do I like and what else am I passionate about?
🎮 Gaming Notes: Undoubtedly, I'm a huge fan of computer games. From educational games to real-time strategies and MMORPGs, I'm always ready to immerse myself in the unique worlds of virtual reality.
💡 Perfectionist Gene: I have a bit of a perfectionist inclination, which helps me in my work. Every project I work on should meet the highest quality standards, and I strive for excellence in everything I do.
📚 Sleepless Nights with Books: I'm passionate about learning and acquiring new knowledge. Learning brings me joy and satisfaction, and I'm always eager to enhance my skills.
👩🏫 Mentorship Experience: I've had the opportunity to mentor and teach juniors in my previous work experience. It was an incredible opportunity to share my knowledge and help young professionals develop. Witnessing their growth and successes was an immense pleasure for me.
📚 Overly Theoretical Approach: I acknowledge that one of my weaknesses is a tendency to focus too much on theory and analysis, sometimes leaving less time for practical application. However, I'm actively working on this aspect of my work. Currently, I'm focusing on more practical tasks, setting specific goals for myself, and constantly learning from my experience. I feel that this balance between theory and practice is the key to effective task completion and achieving success.


Error Domain=NSCocoaErrorDomain Code=3840 "Badly formed object around character 25." UserInfo={NSDebugDescription=Badly formed object around character 25.}

How i convert my object class to string. when i a used toJSON its convert into dictionary .but i want to convert my object Class  to Json Formate
toJSON
"["reminderDateTime": 2016-04-01T18:07:07 +0530, "alarmId": 800428, "recurrenceOption": EVERY WEEK]"
but i want in this formate
{"reminderDateTime": "2016-04-01T18:07:07 +0530", "alarmId": 800428, "recurrenceOption": "EVERY WEEK"}
Please guide me ....

Have you tried using the toJSONString function?

Thank For Reply....

I am facing this issue despite of using toJSONString function


manager/scheduler: disable plugin filter

Since plugins are lazy loaded on use in the engine, tasks that require a
plugin that hasn't been used yet will never be dispatched until the
engine description reports it.
Rather than remove all this code, we have left it in place to be used
when plugin scheduling is added in the future.
cc @aluzzardi @tiborvass
Signed-off-by: Stephen J Day<EMAIL_ADDRESS>

LGTM

[Current coverage][cc-pull] is 54.86% (diff: 100%)

Merging [#1224][cc-pull] into [master][cc-base-branch] will decrease coverage by 0.28%

@@             master      #1224   diff @@
==========================================
  Files            77         77
  Lines         12368      12368
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
- Hits           6821       6786    -35
- Misses         4614       4650    +36
+ Partials        933        932     -1

[][cc-pull]

Powered by Codecov. Last update [aceca0d...6be09ef][cc-compare]
[cc-base-branch]: https://codecov.io/gh/docker/swarmkit/branch/master?src=pr
[cc-compare]: https://codecov.io/gh/docker/swarmkit/compare/aceca0d4dfe7cd103971ede970de975c257a9b9b...6be09ef2e2e23b65c4442b81bc0bfd2a1014c1b7?src=pr
[cc-pull]: https://codecov.io/gh/docker/swarmkit/pull/1224?src=pr

LGTM


Added Perfect Number function

Do the checklist before submitting the PR:

[x] Have you read the guidelines mentioned in CONTRIBUTING.md?
[x] Have you squashed your commits?

Q: What version of Node.js you've used in the project? (e.g. Node v10.11.0)
A: v10.15.1
Q: Mention the Issue Number! (e.g. Fixed #8)
A: Fixed #23

Give additional information regarding the PR below:

Codecov Report

Merging #24 into master will increase coverage by 0.1%.
The diff coverage is 100%.

@@            Coverage Diff            @@
##           master      #24     +/-   ##
=========================================
+ Coverage   97.11%   97.22%   +0.1%
=========================================
  Files          28       29      +1
  Lines         243      252      +9
=========================================
+ Hits          236      245      +9
  Misses          7        7

Impacted Files
Coverage Δ

src/index.js
100% <100%> (ø)
:arrow_up:

src/perfect/index.js
100% <100%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 1b1ae76...24c0f21. Read the comment docs.

As the Codacy test is failing, how do I improve the PR quality?


[Bug Report]: Error creating WebGL context.

Steps to reproduce

Go to website

Reproduce link
No response
What is actually happening?
Homepage is crashing saying "Error creating WebGL context."

System Info
System:
    OS: Linux 6.1 Debian GNU/Linux 12 (bookworm) 12 (bookworm)
    CPU: (12) x64 AMD Ryzen 5 5600H with Radeon Graphics
    Memory: 24.84 GB / 31.20 GB
    Container: Yes
    Shell: 5.2.15 - /bin/bash
  Binaries:
    Node: 20.9.0 - /run/user/1000/fnm_multishells/72523_1719064431911/bin/node
    Yarn: 1.22.22 - /run/user/1000/fnm_multishells/72523_1719064431911/bin/yarn
    npm: 10.1.0 - /run/user/1000/fnm_multishells/72523_1719064431911/bin/npm
    pnpm: 8.15.4 - ~/.local/share/pnpm/pnpm
  Browsers:
    Chrome: 126.0.6478.114
    Chromium: 124.0.6367.78

Can you please provide a error specific link?

This happens on the homepage at https://www.farmfe.org/, when the browser doesn't support (or allow) WebGL. Looking at it from a different browser I can see you have some sort of canvas overlay for the content, which is otherwise rendered from HTML.

Yes, the background of the homepage uses canvas. You may need to think about how to solve this problem.

Sorry, but I'm not willing to contribute, atm. My guess is that you could put an error boundary closer to the source of the problem, and ignore any error — so that browsers without WebGL support have a normal white background (or a similar CSS gradient background).
But a better solution might be to use CSS to achieve a similar gradient background, without any need for WebGL. As for the snow dots... There may be a way to have them, too, although they won't be random.

No problem! Nothing wrong with your reply either way.

We will consider this issue later. i will close this issue first.