Smoke test for Docfx v3

Docs Build status updates of commit 1bef380:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

microsoft-edge/SmokeTest.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Fix suppressed error message on error when using % format string

Before, the valid flag would always be true. On formatting errors, an error message is returned as the result. (No error prompts.)

Before
After

Partially fixes #69603. There is no way to fix the situation when variables are used.
Fix #69603.

Thanks!


[WIP] VerifyDepTree and DigestFromDirectory use godirwalk

What does this do / why do we need it?
Alters digest code to use godirwalk project. godirwalk handles symlinked directories on Windows correctly, and is faster than filepath.Walk on both unix and Windows.
What should your reviewer look out for in this PR?

This adds godirwalk as a project dependency for dep.
godirwalk has a very similar, but not identical, API to filepath.Walk.

Do you need help or clarification on anything?
I recall @sdboyer mentioning that there were some tests in the other portions of dep that were not working on Windows. I wonder whether those are related to the errant handling of symlinks to directories that happens with filepath on Windows, and whether godirwalk could address that.
Which issue(s) does this PR fix?
Related to #121.

I'd like to hold off on merging this just yet.

ready for review now, though?
On 08/30 19:33, Karrick McDermott wrote:

I'd like to hold off on merging this just yet.
--
You are receiving this because your review was requested.
Reply to this email directly or view it on GitHub:
https://github.com/golang/dep/pull/1084#issuecomment-326095382

It looks like the speedup on Mac is significantly more than on linux. Here, walking a large directory tree is as fast as doing so with find utility:
hostname:walk-fast karrick$ du -sh ~/src
 26G    /Users/karrick/src
hostname:walk-fast karrick$ for i in 1 2 3 ; do time walk-fast ~/src | wc -l ; done
  542946

real    0m6.048s
user    0m1.279s
sys     0m2.667s
  542946

real    0m6.022s
user    0m1.267s
sys     0m2.633s
  542946

real    0m6.079s
user    0m1.278s
sys     0m2.682s
hostname:walk-fast karrick$ for i in 1 2 3 ; do time walk-stdlib ~/src | wc -l ; done
  542946

real    0m29.369s
user    0m1.994s
sys     0m24.758s
  542946

real    0m29.139s
user    0m1.987s
sys     0m25.127s
  542946

real    0m29.092s
user    0m2.010s
sys     0m24.917s
hostname:walk-fast karrick$ for i in 1 2 3 ; do time find ~/src | wc -l ; done
  542946

real    0m5.979s
user    0m0.310s
sys     0m2.724s
  542946

real    0m5.823s
user    0m0.313s
sys     0m2.578s
  542946

real    0m5.723s
user    0m0.307s
sys     0m2.564s

When compared on Linux:
[karrick@linuxBox walk-fast]$ du -sh ~/src
36G     /home/karrick/src
[karrick@linuxBox walk-fast]$ for i in 1 2 3 ; do time walk-fast ~/src | wc -l ; done
829481

real    0m5.443s
user    0m4.246s
sys     0m3.698s
829481

real    0m5.415s
user    0m4.006s
sys     0m3.932s
829481

real    0m5.433s
user    0m4.418s
sys     0m3.529s
[karrick@linuxBox walk-fast]$ for i in 1 2 3 ; do time walk-stdlib ~/src | wc -l ; done
829481

real    0m8.298s
user    0m4.789s
sys     0m6.034s
829481

real    0m8.442s
user    0m4.835s
sys     0m6.144s
829481

real    0m8.352s
user    0m4.759s
sys     0m6.084s
[karrick@linuxBox walk-fast]$ for i in 1 2 3 ; do time find ~/src | wc -l ; done
829481

real    0m1.492s
user    0m0.669s
sys     0m0.921s
829481

real    0m1.474s
user    0m0.698s
sys     0m0.873s
829481

real    0m1.495s
user    0m0.636s
sys     0m0.949s

The changes to dep to use godirwalk are quite trivial.
Earlier today I was running some benchmarks, and I had found a bug in godirwalk code.
I would appreciate any thoughts on godirwalk code, however.

On Windows, walk-fast runs in half the time that walk-stdlib runs, by the way.

I have fixed the bug, but would appreciate any extra eyeballs on the code, and thoughts folks might have.

It's interesting to note that while godirwalk is definitely faster that filepath.Walk, in situations where the main bottleneck is doing some I/O on the discovered nodes, the performance gain is often marginalized.
However, using godirwalk in DigestFromDirectory and VerifyDepTree I was still able to get a performance improvement, although because file I/O now dominates the algorithm's time, the performance improvement is 4 seconds out of 30 running on darwin, and nearly 12 seconds out of 30 on my linux box.
[karrick@macHost]$ go test -bench Flame
goos: darwin
goarch: amd64
pkg: github.com/golang/dep/internal/gps/pkgtree
BenchmarkFlameDigestFromDirectoryFilepath-8            1<PHONE_NUMBER>5 ns/op
BenchmarkFlameDigestFromDirectory-8                    1<PHONE_NUMBER>1 ns/op
PASS
ok      github.com/golang/dep/internal/gps/pkgtree	50.561s

[karrick@linuxHost pkgtree]$ go test -bench Flame
goos: linux
goarch: amd64
pkg: github.com/golang/dep/internal/gps/pkgtree
BenchmarkFlameDigestFromDirectoryFilepath-12                   1<PHONE_NUMBER>0 ns/op
BenchmarkFlameDigestFromDirectory-12                           1<PHONE_NUMBER>5 ns/op
PASS
ok      github.com/golang/dep/internal/gps/pkgtree      52.233s

Okay, the previous benchmark was created by traversing the testdata_digest directory.
As expected, when I benchmark using $GOPATH/src, the process is much more I/O focussed, and the performance gains from traversing the tree are greatly mitigated by the additional I/O load of reading the files.
On RHEL 6.x
[karrick@linuxHost pkgtree]$ go test -bench FlameDigest
goos: linux
goarch: amd64
pkg: github.com/golang/dep/internal/gps/pkgtree
BenchmarkFlameDigestFromDirectoryFilepath-12                   1<PHONE_NUMBER> ns/op
BenchmarkFlameDigestFromDirectory-12                           1<PHONE_NUMBER> ns/op
PASS
ok      github.com/golang/dep/internal/gps/pkgtree      11.837s
[karrick@linuxHost pkgtree]$ du -sh ~/go/src
1.4G    /home/karrick/go/src

On macOS Sierra
[karrick@darwinHost pkgtree]$ go test -bench FlameDigest
goos: darwin
goarch: amd64
pkg: github.com/golang/dep/internal/gps/pkgtree
BenchmarkFlameDigestFromDirectoryFilepath-8   	       1<PHONE_NUMBER> ns/op
BenchmarkFlameDigestFromDirectory-8           	       1<PHONE_NUMBER> ns/op
PASS
ok  	github.com/golang/dep/internal/gps/pkgtree	6.949s
[karrick@darwinHost pkgtree]$ du -sh ~/go/src
1.6G	/Users/karrick/go/src

gonna try to get on reviewing this a bit later this week - sorry, taken up with case sensitivity stuff rn.

Case insensitivity... Not fun. I'm happy to help out on this project still. And looking forward to getting the digest sum added to the Gopkg.lock file.

It looks like the BoltDB tests are failing, causing the builds to not pass.
https://travis-ci.org/golang/dep/jobs/272128978

The tests that use the bolt db cache are passing on localhost, so it might be a race condition in source_cache_bolt_test.go...

@jmank88,
I have performed a fresh checkout on upstream on my Windows box, and running the bolt db tests, and sometimes they pass, and sometimes they fail.

Restarted jobs

reviewing this in a bit, but for right now trying a quick close/reopen bump for appveyor CI testing 😄

So I'm a bit nervous that upstream, without integration of this PR, has a test case with a race condition. In fact, if there are a lot of other PRs out there that are also failing tests, then it's likely to be true.
In any event, please ignore this PR, check out dep, then run the Bolt tests in internal/gps. On my Mac they run fine more often than fail, but on my Windows they fail more often than pass.

In any event, please ignore this PR, check out dep, then run the Bolt tests in internal/gps. On my Mac they run fine more often than fail, but on my Windows they fail more often than pass.

Are you up to date on master? I haven't seen the failure since merging this fix: https://github.com/golang/dep/pull/1133

Close/Open to trigger appveyor

@jmank88, I had not seen that and will rebase again to pick up this change today when I get a chance.

I wonder whether those are related to the errant handling of symlinks to directories that happens with filepath on Windows, and whether godirwalk could address that.

i'm don't think so. tests like TestCopyFileSymlink() can have problems because creating symlinks on windows can require additional permissions not afforded to non-administrative users. most of the rest of the windows special cases we have arise from the difference between windows and unixy file permissioning models.

Somehow rebasing from upstream/master and pushing to my fork causes some problems. I will take a look at this later.

do they really? huh. that's not been my subjective experience.
only standard I'm really following here is stdlib/the toolchain.
On September 15, 2017 6:53:34 PM EDT, Karrick McDermott<EMAIL_ADDRESS>wrote:

karrick commented on this pull request.

@@ -0,0 +1,103 @@
+package pkgtree

I actually prefer snaky filenames, or even better with hyphens, but
most other Go projects use camel case for file names. Is there
something I don't know about, or just a convention localized to dep?
--
You are receiving this because you modified the open/close state.
Reply to this email directly or view it on GitHub:
https://github.com/golang/dep/pull/1084#discussion_r139265133

I don't mind renaming the files, however I've been on business trip this past week and procrastinating the experience of understanding what I did wrong when I attempted my last git rebase. Thanks for your patience.

yeah, seems like we've got some rebase weirdness. i'm happy to help you sort out a workable process - here, or pinging me on slack works, as well 😄

would it be easier to close this out and open a fresh PR?

i'm going to close this out and open a fresh PR once i have a chance to get back to this.


Immutable.Map().get() does not treat integers the same as {}[]

Hi all,
I'm fairly new to JS so I might be missing something, but it seems like Immutable.Map().get() should treat integers the same way as standard object access. For example:

Immutable.Map({1:2}).get(1)
undefined

var x ={1:2}
undefined
x[1]
2

You need to convert to a string to use .get() which seems error prone and cumbersome.

Immutable.Map({1:2}).get('1')
2

The issue here is not in Immutable, but JS objects. JS object properties are always strings.
var x = { 1: 2 }; // { "1" : 2 }
var keys = Object.keys(x); // [ "1" ]

When you access a property using square-bracket notation, that value first gets coerced into a string before looking it up in the JS Object.

Map, on the other hand, does not coerce to string first. Maps (ES6 Maps and Immutable.js Maps) allow you to store any kind of value as keys, strings, numbers, other Objects.

Ah, that makes sense. Thank you for the clarification!
On Fri, Aug 14, 2015 at 5:56 PM, Lee Byron<EMAIL_ADDRESS>wrote:

Map, on the other hand, does not coerce to string first. Maps (ES6 Maps
and Immutable.js Maps) allow you to store any kind of value as keys,
strings, numbers, other Objects.
—
Reply to this email directly or view it on GitHub
https://github.com/facebook/immutable-js/issues/588#issuecomment-131249139
.

Just from watching this repo, I feel like this confusion is pretty common. I looked to see if there was anything in the docs calling it out as a common pitfall, but couldn't find anything. I'd be happy to contribute the documentation, but I'm not sure where it should go. The README? The docs for the Immutable.Map constructor?

I would love to entertain that kind of change to the docs!

Sorry to re-open this issue, but I have a question. If we fetch a JSON from an API and create a Map from it, all keys will be converted to string, am I right? There is no easy way to automatically parse a JSON to an Immutable structure without having all object keys as strings really?

That's mostly right. I should point out that "all keys will be converted to string, am I right?" is not quite right - specifically there is no conversion happening as JSON object keys are always strings.
For example:
// Examples of valid JSON
{ "foo" : "bar" }
{ "true" : true }
{ "123" : 456 }

// Examples of invalid JSON
{ foo : "bar" }
{ true : true }
{ 123 : 456 }

Added 59028b5e8552339acbdaab0c3f6547bd131f8f54 to help clarify further

Many thanks for clarifying @leebyron! Yes you're absolutely right that all JSON keys are strings, I put a wrong example because I was mocking data with JavaScript objects and I didn't realised at that moment that the keys I'll receive will be all strings. Thanks for being so helpful! :smiley:

No problem at all. Thanks for the good questions, that led to better README!

So the conclusion is that if I put key in forms of Integer, I should use toString method for getting that value ?

It's totally fine to use integers as keys - in fact that is a very common practice. However if you wish for an integer key and a string which happens to include that integer to both access the same value, then yes, you need some normalization between them - this is the same behavior as ES6 Map and Set.


why use dummy Impl of power component instead of estimated?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
we are using dummy if no RAPL or MSR
https://github.com/sustainable-computing-io/kepler/blob/main/pkg/power/components/power.go#L60
but we do have estimated
https://github.com/sustainable-computing-io/kepler/blob/main/pkg/power/components/source/estimate.go
so from name, same estimated is suitable than dummy?
Describe the solution you'd like
A clear and concise description of what you want to happen.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

@marceloamaral do you know why we have use dummy? Thanks

I think the dummy was created before for testing purposes.
If I remember correctly, the estimate needs to have the estimate sidecar, right?
Therefore, if we need to run a test without the estimated sidecar and the node does not support RAPL, the dummy will be used.

dummy is selected unconditionally
let me see whether I can add a estimated logic here (first estimate then if not possible, use dummy)

@jichenjc is this still a problem?

no, should be ok now


Backport #718 (Fix using plugins on Windows) into foxy

To reiterate the description from #718:
On Windows, when attempting to use the MoveIt2 Rviz plugins, they would all fail to load, and I would get errors like
PluginlibFactory: The plugin for class 'moveit_rviz_plugin/PlanningScene' failed to load. Error: Failed to load library

I was able to fix these errors by exporting InteractiveMarkers

Linux
Linux-aarch64
macOS
Windows

macOS and Windows failures are known and unrelated.


cue  literal "struct "  and "array" are not suppored

Steps to reproduce the behavior:

use this cue file to define one component

"midd-cue-comp": {
	annotations: {}
	attributes: workload: definition: {
		apiVersion: "apps/v1"
		kind:       "Deployment"
	}
	description: ""
	labels: {}
	type: "component"
}

template: {
    output: {
        apiVersion: "apps/v1"
        kind:       "Deployment"
      	metadata: {
       		name: context.namespace + "." + context.appName + "." + context.name
       	}
        spec: {
            properties: parameter.properties
        }
    }

	outputs: {}
    parameter: {
        type:  string
        properties: struct
    }
}

run vela def vet
vela cli raise one error
Error: failed to parse CUE: parameter.properties: reference "struct" not found
"array" also is not supported

I am not sure if this is bug, or just by design.
KubeVela Version
➜  cue-test vela version
Version: v1.2.0-rc.2
GitRevision: git-f468814
GolangVersion: go1.16.12
➜  cue-test

yes, thx. This error is raised by CUE, not vela. let me close this issue.


 is not working with a Azure AD Device ObjectId

Under "Access Policy rule" -> "Entry" it states:

ComputerSid
Local computer Sid or computer Sid group or the Sid of the AD object  or the Object Id of the AAD object, defines whether to apply this  policy over a specific machine or machine group. One entry can have a  maximum of one ComputerSID and an entry without any ComputerSID means to  apply the policy over the machine. If you want to apply an Entry to a  specific user and specific machine, add both SID and ComputerSID into  the same Entry.

Apparently that is not true. Matching against an Azure AD ObjectId leads to an error in Eventlog Microsoft-Windows-DeviceManagement-Enterprise-Diagnostics-Provider/Administrator - Error Code 404. "The structure of the security principal is invalid" (System is actually German, it states "Die Struktur der Sicherheitskennung ist unzulässig").
Using Windows 11 Enterprise 22H2 Build 22621.1555

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

ID: 7b7a5c17-1358-990b-968d-432a3aab2e17
Version Independent ID: 1b4d4eff-3e22-47d7-4054-6cc9ed0217d0
Content: Microsoft Defender for Endpoint Device Control Removable Storage Access Control, removable storage media
Content Source: microsoft-365/security/defender-endpoint/device-control-removable-storage-access-control.md
Service: microsoft-365-security
Sub-service: mde
GitHub Login: @Dansimp
Microsoft Alias: dansimp

@Dansimp Please help us in resolving this issue. Thanks

To make it easier for you to submit feedback on articles on learn.microsoft.com, we're transitioning our feedback system from GitHub Issues to a new experience.
As part of the transition, this GitHub Issue will be moved to a private repository. We're moving Issues to another repository so we can continue working on Issues that were open at the time of the transition. When this Issue is moved, you'll no longer be able to access it.
If you want to provide additional information before this Issue is moved, please update this Issue before December 15th, 2023.
With the new experience, you no longer need to sign in to GitHub to enter and submit your feedback. Instead, you can choose directly on each article's page whether the article was helpful. Then you can then choose one or more reasons for your feedback and optionally provide additional context before you select Submit.
Here's what the new experience looks like.
Note: The new experience is being rolled out across learn.microsoft.com in phases. If you don't see the new experience on an article, please check back later.
First, select whether the article was helpful:

Then, choose at least one reason for your feedback and optionally provide additional details about your feedback:

Article was helpful
Article was unhelpful

Finally, select Submit and you're done!


Google fonts sometimes fail to load - caching of opaque errors

Library Affected: workbox-strategies, workbox-recipes
Browser & Platform: Google Chrome 123.0.6312.58 for Mac
Issue Description:
I've noticed that Google fonts sometimes fail to load for my web app.
We're using a standard <link> tag to request the fonts stylesheet:
    <link
      rel="stylesheet"
      href="https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap"
      crossorigin
    />

and our own local version of the Google Fonts recipe, based off the old https://developers.google.com/web/tools/workbox/guides/common-recipes#google_fonts page:
  registerRoute(
    ({ url }) => url.origin === 'https://fonts.googleapis.com',
    new StaleWhileRevalidate({
      cacheName: 'google-fonts-stylesheets',
    })
  );

  registerRoute(
    ({ url }) => url.origin === 'https://fonts.gstatic.com',
    new CacheFirst({
      cacheName: 'google-fonts-webfonts',
      plugins: [
        new CacheableResponsePlugin({
          statuses: [0, 200],
        }),
        new ExpirationPlugin({
          maxAgeSeconds: 60 * 60 * 24 * 365,
          maxEntries: 30,
        }),
      ],
    })
  );

The cause, as best as I can tell, is that Chrome will randomly fail to load the googleapis.com link when the page is first loaded. (It seems to work fine whenever an already open page is reloaded.) I've been unable to find any details as to why. Sample console error messages:

The FetchEvent for "https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" resulted in a network error response: an "opaque" response was used for a request whose type is not non-cors
The FetchEvent for "https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" resulted in a network error response: an "opaque" response was used for a request whose type is not non-cors
The FetchEvent for "https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap" resulted in a network error response: an "opaque" response was used for a request whose type is not non-cors
GET https://fonts.googleapis.com/css?family=Roboto:300,400,500,700&display=swap net::ERR_FAILED

When this happens, Workbox may cache an opaque response, causing the next page load or reload to not have valid fonts. (I believe that had previously happened in the sample console messages - the previous response had failed, resulting in the FetchEvent messages, then the current response failed too.)
If I modify the recipe to not cache opaque responses, I no longer have these issues:
  registerRoute(
    ({ url }) => url.origin === 'https://fonts.googleapis.com',
    new StaleWhileRevalidate({
      cacheName: 'google-fonts-stylesheets',
      plugins: [
        new CacheableResponsePlugin({
          statuses: [200],
        }),
      ],
    })
  );

  registerRoute(
    ({ url }) => url.origin === 'https://fonts.gstatic.com',
    new CacheFirst({
      cacheName: 'google-fonts-webfonts',
      plugins: [
        new CacheableResponsePlugin({
          statuses: [200],
        }),
        new ExpirationPlugin({
          maxAgeSeconds: 60 * 60 * 24 * 365,
          maxEntries: 30,
        }),
      ],
    })
  );

Based on this, I believe that the recipe's guidance to allow caching of opaque Google fonts responses is out of date.

@joshkel same issue here! Did you manage to find a solution?

@josuearrieta Yes, we added CacheableResponsePlugin({ statuses: [200] }) to our version of the recipe to instruct Workbox to only cache valid responses.
For completion, here's the full code we're using.

/**
 * Configure caching for Google Fonts:
 *
 * - https://web.archive.org/web/20211204153350/https://developers.google.com/web/tools/workbox/guides/common-recipes#google_fonts
 * - https://github.com/GoogleChrome/workbox/blob/v7.0.0/packages/workbox-recipes/src/googleFontsCache.ts#L32
 */
export function registerGoogleFonts() {
  // NOTE: Workbox recommends allowing caching of opaque responses.  However,
  // we've seen that cause problems: when the page is first loaded, Chrome may
  // fail to retrieve the CSS (with generic "net::ERR_FAILED" errors in the
  // console), which causes unusable opaque responses to be cached, which causes
  // fonts to be missing the _next_ time the page is loaded.  To deal with that,
  // we'll only cache valid (non-opaque) responses.
  //
  // (Apparently, StaleWhileRevalidate caches opaque responses by default, while
  // CacheFirst does not.  That seems like an odd API design; we'll specify
  // CacheableResponsePlugin for both to be explicit and consistent.)
  //
  // See https://github.com/GoogleChrome/workbox/issues/3303 and
  // https://developer.chrome.com/docs/workbox/caching-resources-during-runtime#workbox_may_not_cache_opaque_responses

  // Cache the Google Fonts stylesheets with a stale-while-revalidate strategy.
  registerRoute(
    ({ url }) => url.origin === 'https://fonts.googleapis.com',
    new StaleWhileRevalidate({
      cacheName: 'google-fonts-stylesheets',
      plugins: [new CacheableResponsePlugin({ statuses: [200] })],
    })
  );

  // Cache the underlying font files with a cache-first strategy for 1 year.
  registerRoute(
    ({ url }) => url.origin === 'https://fonts.gstatic.com',
    new CacheFirst({
      cacheName: 'google-fonts-webfonts',
      plugins: [
        new CacheableResponsePlugin({ statuses: [200] }),
        new ExpirationPlugin({
          maxAgeSeconds: 60 * 60 * 24 * 365,
          maxEntries: 30,
        }),
      ],
    })
  );
}


macOS Mojave 10.14 support

I am using an older macOS Version (10.14). Would it be possible to release a version compatible with this old OS ?

Sure, I can try for compatibility with Mojave. Qt 6.4 does support it, I'll just have to get a Mojave VM running as I currently do all my MacOS building on Monterey.

That'll be nice. I know Mojave is already deprecated, but I have some old 32bit macOS software running, so I'm staying with Mojave as long as possible and as long as my (old) MBP doesn't break.

I was able to get a build working, but I had to use Qt 6.2.0 instead of 6.4.4.
I attached a zip of the build I tested. Let me know if this works for you.
trackerboy_v0_6_3_osx_x64_mojave.zip

Thats very kind of you. I gave it a try and it works flawless for all functions I tested. Thank you so much. Waiting for a way to use TrackerBoy files on real hardware !

Fixed the missing icon, CMake didn't set the CFBundleIconFile key in the bundle's Info.plist. Yet my Monterey vm had no problem finding the icon without it.
trackerboy_v0_6_3_osx_x64_mojave.zip (fixed)

Yeah


Initial Travis CI build config and badge

This targets scala 2.12.3 but the latest recommended scala for Kafka 0.11.x is scala 2.11.  So, I don't know if this version consistency with deploying the same scala version is a problem, just saying that I'm not looking at deploying scala 2.12.x until the services we need are using it in their stable releases (LMK if they are using it already and we should be deploying it).

What does travis.ci recommend WRT caching the build dependencies that are downloade by sbt?  In maven, I've used a travis cache on the ~/.m2 directory before (or subdirectories of it, like just the repository).  Can we do this with sbt and, if so, why not do it here?

Yeah, I am willing to entertain caching strategies subsequently, mostly for banana-rdf if we are stuck compiling it from source (since it isn't published for 2.11.x).  But right now the execution time is only around 3 minutes, so I think caching optimization can be deferred.
We can test a range of scala versions, if desired.  I was curious to see if 2.12 worked, given the banana-rdf limitation.  Bumping up the scala version also solved build errors, as you can see from the 2-commit history here.

Merged in @Maatary's patch to test 2.11.11 also.


Is there way to zoom in and out in advanced editing?

When I am editing the finger picker, since the finger pickers I created are very small so I wish to zoom in to move them around at the right place, but I didn't find a way to zoom in in advanced editing though.

It is not planned for a close futur due to the amount of work and the widget complexification it does represent.
But it is not a definitive 'no' either. That is a recurring request.
Sorry


Loading high frequency data is too slow.

I am going to use qlib for intraday
I updated 1min data in real time to reflect the stock market.
And I tried to load last 10 minutes data using following codes.
df = D.features(D.instruments('csi300'), ['$open', '$high', '$low', '$close', '$factor'], start_time='2020-09-14 09:30:00',
end_time='2021-09-14 09:40:00', freq="1min")
I expect it will take less than 0.5s but it takes above 30s
It is much slower than traditional database.
What did I do wrong?

I try your code and it takes less the 0.5s, there must be something wrong. Just try to set expression_cache=None when you init qlib? Also can you show me your all code?

I got same result when I try to set dataset_cache=None in the init step.
I use following codes to test it.
class MyTestCase(unittest.TestCase):
def setUp(self):
provider_uri = "~/.qlib/qlib_data/cn_data_1min"  # target_dir
qlib.init(provider_uri=provider_uri, region=REG_CN, dataset_cache=None)
def test_dataset(self):
    start = time.time()

    df = D.features(D.instruments('csi300'), ['$open', '$high', '$low', '$close', '$factor'], start_time='2020-09-14 09:30:00',
                    end_time='2021-09-14 09:40:00', freq="1min")

    print(time.time()-start)

How about set expression_cache=None also? And what configuration (memory, CPU) are you running the code on?

I alos got same result.
I execute profilling tool with above codes and got following results.

My system infomation is as follows.

You can try to run it in linux. For high frequency related code, I think it may be better to run it in linux.

OK. I will try it. And would you explain more detail about it? I wonder why linux is better than window for high frequency related code

Sorry, I don't know much about the process management mechanism of windows, but I guess there may be several reasons for this:

The efficiency of windows IPC (interprocess communication) may be low, which makes the transmission of high-frequency data between parent and child processes take more time
Windows process switching may be slower
There may be more possibilities, but they can all be verified by some methods. If you have any opinions, please share them with me.


Feature: commit with selected line or chunk

As the title says.
This would be a good feature to have to give more control to the user in their commits.

Keeping this on the radar for the future once all the basics are 100% there.

:+1:

@jacogr I was doing some research how to do this and did some test code, please Assign me this feature. I think I can complete it soon

Jaco hasn't been active on github for a while ( other than publishing a new version in coordination with e-mail conversations ), AFAIK you need to be a Collaborator in order to have an issue assigned to you.
Submitting a pull request should be the way to go currently - I will look at it and likely merge it as soon as I can.

thanks @MarcelMue  the idea was report that I'm working on it. I'll send a PR soon

:+1: Sounds good!


Resolve CRAN check warnings/errors/notes

This fixes #447 and #451.

Resolve CRAN check warnings/errors/notes
Skip tests on CRAN

@terrytangyuan Any idea about the failures? Seems to have happened on this commit: https://github.com/h2oai/h2o4gpu/pull/452/commits/e6f7ddab392112fc5486fcdc3626da72e9e9bccf

I dont't think the failure is related to this PR:
Collecting botocore==1.8.43 (from awscli>=1.11.148->-r requirements.txt (line 36))
  Could not find a version that satisfies the requirement botocore==1.8.43 (from awscli>=1.11.148->-r requirements.txt (line 36))
No matching distribution found for botocore==1.8.43 (from awscli>=1.11.148->-r requirements.txt (line 36))
make: *** [deps_install] Error 1
Makefile:218: recipe for target 'deps_install' failed
script returned exit code 2

I've restarted the build

That’s a new requirement by CRAN submissions. Any jargons should be surrounded by single quotes.

LGTM

@terrytangyuan Do you mean that CRAN requires quotes around acronyms?  Is this posted somewhere on CRAN policies that you can link to so I can read more?

@ledell I was looking for that as well but couldn't find it. It may just be a suggestion that people follow around in many packages.  Other spelling checks in docs are fine but DESCRIPTION file is more strict and it will complain if you don't fix it.

 I would like to review this one more time with these points in mind if that’s okay?

Sure take your time. As we get closer to CRAN submission, we really need to think more carefully.

@terrytangyuan Let's merge this and then follow up with a discussion about removing the extra functions (e.g. fit_transform(), fit_predict(), etc) later.


Just some housekeeping

Current coverage is 92.32%

Merging #63 into master will not affect coverage as of 1a593b6

@@            master     #63   diff @@
======================================
  Files           33      33
  Stmts         1043    1043
  Branches         0       0
  Methods          0       0
======================================
  Hit            963     963
  Partial          0       0
  Missed          80      80

Review entire Coverage Diff as of 1a593b6

Powered by Codecov. Updated on successful CI builds.

Thanks!


[Pixel][2,9]Fill the Pixel!

Ayush kumar mishra , 12240340 ,  2022 batch
Saffron

Assigned !! Go ahead @Ayush-mishra-0-0


Request: Ed448/X448

https://tools.ietf.org/html/rfc7748#section-6.2
Bit overkill, but assume performance isn't an issue.

NSec doesn't implement any cryptographic primitives itself but relies on libsodium for that. At present, libsodium doesn't include an Ed448/X448 implementation, so I'm closing this issue for now. Feel free to reopen if libsodium adds support.

Thought libsodium did have that :cry: thanks!


[Localization] Escape double quotes in resx to rc script

Summary of the Pull Request
What is this about?
This PR fixes the build farm failing because of double quotes not being escaped in the rc file generated from the resx. Earlier double quotes were used only in KBM so they were escaped in the resx file directly and not from the script, however this could cause issues for the localization team in the future, so this PR changes the resx to rc script such that all double quotes are escaped (" is replaced with ""). For this to be consistent with existing resource files, all occurrences of "" in the resx or lcl files have been replaced to the unescaped versions.
PR Checklist

[ ] Applies to #xxx
[ ] CLA signed. If not, go over here and sign the CLA
[ ] Tests added/passed
[ ] Requires documentation to be updated
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Validation Steps Performed
How does someone test & validate?

Validated on Build farm https://github-private.visualstudio.com/microsoft/_build/results?buildId=13600&view=results
Validate locally that KBM builds correctly and strings appear correctly in UI.

LGTM

this is needed to validate #7265


use pnpm dlx jsr install to install all dependency packages, it fails to install successfully.

When I use “pnpm dlx jsr install“ to install all jsr packages listed in the package.json, it fails to install successfully.
My package.json includes the following dependency information.
// package.json
{
   "dependencies": {
      "@luca/cases": "npm<EMAIL_ADDRESS>      "@wen/utils": "npm<EMAIL_ADDRESS>    }
}

I need to use pnpm dlx jsr install @luca/cases @wen/utils, manually writing all package names, in order to install successfully. Why can't it directly read the package information from package.json and automatically install all of them?

In that case running pnpm i should be enough. We could change the JSR tool to automatically run that under the hood when no package arguments are passed to it.

Thank you for your prompt response! I'm accustomed to simply running 'pnpm i' when using pnpm, so I hope JSR can also support automatic installation without passing parameters. Of course, executing 'pnpm i' directly is also an option.

@PoliWen you can run pnpm i with JSR as well. The pnpm dlx jsr only adds the alias to the package.json and sets up .npmrc, but after that it simply calls pnpm i <packages> under the hood. Opened #67 that calls pnpm i when no package arguments are passed.

@marvinhagemeister Thank you very much, that's great, I admire your speed in handling questions.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target/pull/110 is merged into live branch.
Auto archive content to https://github.com/OPS-E2E-PPE/docs-archive-test-target.git

Docs Build status updates of commit 4b7fc75:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error]

Cannot sync git repo to specified commit because branch Archive_master_2019-09-29-05-59-28 has been deleted or has been force pushed: fatal: Couldn't find remote ref Archive_master_2019-09-29-05-59-28

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


cloudfoundry-cli: 8.7.1 -> 8.7.2

Description of changes
change log: https://github.com/cloudfoundry/cli/releases/tag/v8.7.2
diff: https://github.com/cloudfoundry/cli/compare/v8.7.1...v8.7.2

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 253333 run on x86_64-linux 1

1 package built:

cloudfoundry-cli


Add count and limit on CC control panel, prevent creating new CC if limit is exhausted

This PR adds a text message before the Create a new Custom Command button to show how many commands are created, and disables the button if the limit is exhausted.
See the screenshots below:

This one here does not take account if all guilds are set to premium through /admin/config or via Redis directly.

This one here does not take account if all guilds are set to premium through /admin/config or via Redis directly.

This can be done by using premium.IsGuildPremium() function as the condition for checking whether the guild is premium or not. This handles the case when all guilds are set to premium through the env variable, but I saw some issues when setting premium through the /admin/config. So I'll update this once the issue is figured out.


Is there any changes in ARP API?

Important notices
Our forum is located at https://forum.opnsense.org , please consider joining discussions there in stead of using GitHub for these matters.
Before you ask a new question, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

I don't know how do I debug this because there's not really any useful information I can provide. But the home assistant integration is no longer working for me (and some people). More information about the problem can be look at here: https://github.com/home-assistant/core/issues/81815

I don't think so, the library [1] seems to call https://xxx.xxx.xxx.xxx/api/diagnostics/interface/getArp, which doesn't look changed in terms of output on our end.

https://github.com/mtreinish/pyopnsense/blob/529a49565f82733d2667ee7573da7029b1b96a3d/pyopnsense/diagnostics.py#L50-L52

I think it doesn't make sense to keep it open with the details known, somebody probably needs to analyse what's happening in home assistant, when that point to an issue on our end you can always reopen (or open a new ticket if its in another area).


FR Add option to display time since last changed under location.

Describe the solution you'd like
I would like to be be able to see how long the person has been at the location. Displayed under the location name.

Hi,
I'm not planning to implement this for now.
Thanks.


Working with Gemini flex?

Is this working with go-e Charger Gemini Flex (https://go-e.com/en/products/go-e-charger-gemini-flex)?

Sure, it’s same hardware as the normal one. Just the connection is FLEXible and nox FIXed.

Thank you, i asked because the README just talks about the HOME+ and HOMEfix models.


Feature/basename

I have implemented the feature described on the  https://github.com/remix-run/remix/discussions/2891.
This include the serverBasename attribute on remix.config.js for declare a prefix to URL

serverBasename default value is ""
fix deploy on path server (basename)
fix the navegation in client side or server side components

Refs #2996

This would be a great feature to have in remix. If I can help with making this happen let me know!

Thanks, but I dont know what is the next step.

@yracnet As mentioned in this comment I think they are waiting for some unrelated changes that have snuck in to be removed: https://github.com/remix-run/remix/pull/4459#pullrequestreview-1162370075 For example decisions/0006-linear-workflow.md is added as part of this PR but doesn't seem related to the scope?

@yracnet , First of all great job, this is such a useful feature.
Do I have your permission to fork this branch and do the required changes (removing unrelated commits) and make the PR merge ready? We really need this feature and incase you're busy, I'll be more than willing to get things moving here 🙏

Hi @hemangsk thanks, I have merged my branch with the las change from dev, I run the test. I will wait to approval my changes. thanks

@yracnet thanks for updating your branch! Unfortunately there are still unrelated changes in the diff. As @hemangsk and I have offered we're happy to port your work to a clean branch to get this shipped if you don't mind

Thanks, I will send a new pr with the clean branch from dev.

v1.18.0 not include this feature ?


README: remove shadow-cljs caveats

All issues have been fixed since, so shadow-cljs doesn't deserve any particular caution.
I verified this by playing with cider + shadow, both at latest. Dynamic completions work, and they cease to if I redefine cider.nrepl.inlined.deps.suitable.v0v4v1.suitable.js-completions/cljs-completions to return [] (and they work again if I un-patch it).
Cheers - V

Done.


fix normal[^!] bug

Use normal! instead of normal to avoid bugs caused by custom mappings.

Thanks! We may be on new enough nvim now that we can avoid using vim.cmd entirely here I forget... but certainly better than before.


chore: update example and dependencies for 0.4.0

updates deps to fix https://github.com/livekit/agents-js/issues/144, also updates example for new method

merging this in.


fix: update graphqltransformer e2e tests

This pr updates e2e tests to conform with new behavior.

https://github.com/aws-amplify/amplify-cli/commit/45cd9736b5fc09d78a3f445f62fc2a971c11fec7
https://github.com/aws-amplify/amplify-cli/commit/e0f7de6bdba1ddc484de341e903bc56460bbb442

Codecov Report

Merging #9446 (1264a18) into master (4c12eb1) will increase coverage by 0.63%.
The diff coverage is 70.51%.

@@            Coverage Diff             @@
##           master    #9446      +/-   ##
==========================================
+ Coverage   55.36%   55.99%   +0.63%
==========================================
  Files         887      889       +2
  Lines       50331    50352      +21
  Branches    10869    10897      +28
==========================================
+ Hits        27866    28195     +329
+ Misses      20393    20127     -266
+ Partials     2072     2030      -42

Impacted Files
Coverage Δ

...tor/src/velocity/util/transform/dynamodb-filter.ts
4.93% <0.00%> (-0.26%)
:arrow_down:

...egory-api/src/provider-utils/supported-services.ts
100.00% <ø> (ø)

...ify-category-geo/src/provider-controllers/index.ts
25.74% <0.00%> (ø)

...plify-category-geo/src/provider-controllers/map.ts
40.32% <ø> (ø)

...oudformation/cdk-stack-builder/s3-stack-builder.ts
3.72% <0.00%> (-0.14%)
:arrow_down:

...dformation/cdk-stack-builder/s3-stack-transform.ts
10.21% <0.00%> (ø)

...n/service-walkthrough-types/s3-user-input-types.ts
76.19% <ø> (ø)

...mation/service-walkthroughs/s3-user-input-state.ts
6.73% <0.00%> (-0.05%)
:arrow_down:

...li-core/src/overrides-manager/migration-message.ts
42.85% <ø> (ø)

packages/amplify-cli/src/execution-manager.ts
7.83% <ø> (+0.50%)
:arrow_up:

... and 95 more

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 0cc75d2...1264a18. Read the comment docs.


recommended Image list page to add the create image function

In GitLab by @cuiaq123 on Nov 6, 2017, 10:38
If you are reporting a problem, please make sure the following information are provided:

Version of board (last git commit number) , docker engine and docker-compose.
Config files of board, you can get them by packaging "board.cfg" and files in the same directory, including subdirectory.
Log files, you can get them by package the /var/log/board/.
Other necessery information.

Recommended users, services, projects, mirror list page search function，User-friendly query

In GitLab by @yhua123 on Nov 8, 2019, 07:40
fixed

In GitLab by @sokril on Nov 8, 2019, 08:13
closed

In GitLab by @sokril on Nov 8, 2019, 08:13
assigned to @luotian-github


wait_for_job throws inconsistant error

Running the following code:
def scan_and_wait(stash, file_path):
    stash.metadata_scan(paths=[file_path])
    queue = stash.job_queue()
    if queue:
        scan_job = next((x for x in queue if 'Scanning' in x['description']), None)
        if scan_job:
            stash.wait_for_job(scan_job['id'])

Inconsistently Gives:
  File "C:\Users\Kevom\PycharmProjects\reddit_stash_download\venv\Lib\site-packages\stashapi\stashapp.py", line 292, in wait_for_job
    self.log.debug(f'Waiting for Job:{job_id} Status:{job["status"]} Progress:{job.get("progress",0.0):.1f}')
                                                                              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
TypeError: unsupported format string passed to NoneType.__format__

Running a very short/already completed scan seems to throw the error most frequently, but I can't get it to produce it every time.
Here's the workflow that most consistently produces the error:

Have a small gallery zip (mine is 2 images) Run scan_and_wait(stash,archive_name)
Run scan_and_wait(stash,archive_name) a second time.
Second time is most likely to throw the error.

Thanks,
vamice

seems that sometimes progress will actually return Null which is never overridden by the default value 0.0  causing this error where other times the progress value will be set solution here is probably to just log the raw value without formatting

should be resolved by 140ca3fc3b9b2a7a56ac265797b91363c6181a01

Thanks


Manage .golangci.yml

Currently, it's up to each provider to decide how to lint itself -- or whether we apply linting at all! This leads to inconsistency across projects.
We should agree on some baseline rules for linting and then deploy those with ci-mgmt to provider repos.

This appears this is already generated via ci-mgmt:

https://github.com/pulumi/ci-mgmt/blob/master/provider-ci/internal/pkg/templates/provider/.golangci.yml

This file was originally added in 2020.
Happy to close this issue or is this relating to something else?


[Bug] Handle functions without parameters correctly

I found a bug in the LLPhant PHP package. It's about how it deals with functions that don't take any parameters.
For example, I have a class called SendNotification that looks like this:
namespace App\Tools;

class SendNotification
{
    /**
     * Send Confirmation to the Slack
     */
    public function sendNotificationToSlack(): void
    {
        echo 'Sending Notification....';
    }
}

When the package tries to make an object schema for the sendNotificationToSlack function, it puts in an empty array for parameters like this:
"tools" => array:1 [
    0 => array:2 [
      "type" => "function"
      "function" => array:3 [
        "name" => "sendNotificationToSlack"
        "description" => "Send Confirmation to the Slack"
        "parameters" => array:3 [
          "type" => "object"
          "properties" => []
          "required" => []
        ]
      ]
    ]
  ]

This causes an error with OpenAI, giving me this message:
OpenAI\Exceptions\ErrorException: Invalid schema for function 'sendNotificationToSlack': [] is not of type 'object'. in file vendor/openai-php/client/src/Transporters/HttpTransporter.php on line 132
Parameters can be optional as per the documentation
Expected format of the Tool is
"tools" => array:1 [
    0 => array:2 [
      "type" => "function"
      "function" => array:3 [
        "name" => "sendNotificationToSlack"
        "description" => "Send Confirmation to the Slack"
      ]
    ]
  ]

Hey @vijaythecoder . Thanks to have spotted this one. I'll have a look at it. Feel free to suggest a fix if you have one, I have a busy month 🙈.

hey @vijaythecoder ,
I pushed a fix in the last version. Tell me if it is working correctly on your side please.

Hey sorry, couldn't get back to you in time. Thanks for posting the fix. I will test it and let you know soon. I will try to contribute if I can. Great package though!


TP to a sign marker

Add a command o a option so the players inside the server can tp to the signs plisssss

I see that you opened a similar issue in the BlueMap repository (https://github.com/MiraculixxT/bluemap-marker/issues/41). I think it makes more sense to have teleporting to markers at that level or as a separate mod that looks at all of the available markers. This is not a direction I want to take this mod, however.


feat: added support for abac and added tests

fixes #40.

I've implemented the second approach as explained in #40. This means we'll need to pass a subclass of AbacClass for ABAC which makes it compulsory to add a toMap function.

@KNawm @santhoshivan23 plz review


[Fix]: Select Tests and Send transaction button

name: 'Pull request'
about: A new pull request
New Pull Request
Checklist

[x] I am not disclosing a vulnerability.
[x] My code is conform the code style
[x] I have made corresponding changes to the documentation
[x] I have updated Typescript definitions when needed

Issue Description

Related issue: #FILL_THIS_OUT
Solution Description

Not any big change here.
Merging this to check release action.


SQL type provider

Statically check SQL strings using a type provider, like Nemerle's SQL macro: http://nemerle.org/wiki/index.php?title=SQL_macros

I wish there were a way to vote for issues. :) This is awesome. Would it be a better fit for FSharpx?

Well, leaving a comment counts as a vote :)
With the SqlDataConnection type provider and enhanced computation expressions in F# 3.0 this isn't so relevant...there will always be some scenarios that require dropping to raw SQL though.
FSharpx could include a basic type provider that returns just the SQL string (validating at compile-time of course), but more generally this would involve actually running the query and returning the results, which involves connection life management, etc.

Given the syntax in the FSharpx list, I would think we could add overloads that took an existing connection or created a new one should no connection be provided. I haven't played with Type Providers yet -- bad me -- but I would think that would be doable.


[WIP] Various fixes found while accepting

Use short timeouts when establishing connections
Ensure all connections are closed:

Reuse stopChan, instead of making a new one each time master changes
Let pipe() signal when a client disconnects

Using log.Print* instead of fmt.Print*
Rename some variables for clarity on which net.Conn is which in the proxy() function

@rogeruiz I didn't rebase this onto #2, but I think I got all the changes (or their equivalent) in this PR.  WDYT about closing that in favor of this?

Awesome, do we want to compile a binary and test this out? I've been replacing the 1.0.1 binary with compiled binaries during testing. I can tag, and release, once this PR lands in master.

I just updated the binary in the v1.0.1 release, will the pipeline re-build or do we need to kick it off manually?


backers think are making one time contributions but get a subscription

https://github.com/opencollective/opencollective/issues/619
I'm looking for the other person that reported this @nicobarretoOC do you remember?
Thank you for taking the time to report an issue 🙏
The easier it is for us to reproduce it, the faster we can solve it.
So please try to be as complete as possible when filing your issue.

URL:
Logged in as: (just provide your username or the url of your profile)
Error message if any:
Expected result:
Browser:
Bonus point if you can add a screenshot :-)
Thank you and have a wonderful day/evening!
(and sorry for inconvenience! We'll do our best to solve this ASAP)

closing this, since it's part of #623


Add authentication for file checkers to use to access GraphQL API

Add IAM user, policy and API keys that the backend file checks can use to call the GraphQL API, since they cannot use Cognito credentials like the frontend. This will give them [access to the API using IAM permissions|https://docs.aws.amazon.com/apigateway/latest/developerguide/permissions.html].
Also add a separate API endpoint for the backend to call, since you cannot use Cognito and IAM auth on the same endpoint.
Probably easiest to review commit-by-commit because the first commit refactors the existing code to extract an API endpoint module.

Updated to remove the IAM user and role which granted access to the new API endpoint.
@MancunianSam pointed out that you could give permissions directly to the Lambdas which will call the API, which is much simpler and means we don't have to worry about storing the IAM user's secret key. :+1:


Help.cpp - adds OLDXML option

to prevent annoying questions like this ;) https://github.com/MediaArea/MediaInfoLib/issues/785

It hurts, but true.
Some people begins to be interested in getting better documentation, I hope to have more time about that in the future, in the meanwhile such PR is appreciated.


Antenna Delay should have an API to save it inside Arduino EEPROM

This could be a nice feature for the user, to abstract away saving the antenna delay.

Thank you very much @Bartvelp


Cask (sqlworkbenchj) Not Updating to Latest Version

Description of issue
sqlworkbenchj is not updating to latest version (123):  https://github.com/caskroom/homebrew-cask/blob/master/Casks/sqlworkbenchj.rb
Output of your command with --verbose --debug
brew update --verbose && brew upgrade --verbose                                    19:27:29
Checking if we need to fetch /usr/local/Homebrew...
Checking if we need to fetch /usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask...
Checking if we need to fetch /usr/local/Homebrew/Library/Taps/chainsawbaby/homebrew-formula...
Checking if we need to fetch /usr/local/Homebrew/Library/Taps/homebrew/homebrew-completions...
Checking if we need to fetch /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core...
Checking if we need to fetch /usr/local/Homebrew/Library/Taps/homebrew/homebrew-services...
Updating /usr/local/Homebrew...
Reset branch 'stable'
Current branch stable is up to date.

Already up-to-date.

brew cask info sqlworkbenchj
sqlworkbenchj: 123
https://www.sql-workbench.net/
/usr/local/Caskroom/sqlworkbenchj/122 (64B)
From: https://github.com/caskroom/homebrew-cask/blob/master/Casks/sqlworkbenchj.rb
==> Name
SQL Workbench/J
==> Artifacts
SQLWorkbenchJ.app (App)
==> Caveats
sqlworkbenchj requires Java. You can install the latest version with

  brew cask install java

brew cask list --versions | grep sqlworkbenchj
sqlworkbenchj 122

Output of brew cask doctor
==> Homebrew-Cask Version
Homebrew-Cask 1.3.6
caskroom/homebrew-cask (git revision 43c5e; last commit 2017-10-27)
==> Homebrew-Cask Install Location
<NONE>
==> Homebrew-Cask Staging Location
/usr/local/Caskroom
==> Homebrew-Cask Cached Downloads
~/Library/Caches/Homebrew/Cask
==> Homebrew-Cask Taps:
/usr/local/Homebrew/Library/Taps/caskroom/homebrew-cask (3776 casks)
==> Contents of $LOAD_PATH
/usr/local/Homebrew/Library/Homebrew/cask/lib
/usr/local/Homebrew/Library/Homebrew
/Library/Ruby/Gems/2.3.0/gems/did_you_mean-1.0.0/lib
/Library/Ruby/Site/2.3.0
/Library/Ruby/Site/2.3.0/x86_64-darwin17
/Library/Ruby/Site/2.3.0/universal-darwin17
/Library/Ruby/Site
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0/x86_64-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby/2.3.0/universal-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/vendor_ruby
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/x86_64-darwin17
/System/Library/Frameworks/Ruby.framework/Versions/2.3/usr/lib/ruby/2.3.0/universal-darwin17
==> Environment Variables
LANG="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
PATH="/usr/local/sbin:/usr/local/Cellar/python/2.7.12_2/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/X11/bin:/Applications/Postgres.app/Contents/Versions/9.6/bin:/usr/local/Homebrew/Library/Taps/homebrew/homebrew-services/cmd:/usr/local/Homebrew/Library/Homebrew/shims/scm"
SHELL="/bin/zsh"

Cask doesn't auto-update, run brew cask reinstall sqlworkbenchj


Remove template dev containers features

The current dev container features list contains entries from the example template.

Can you help us understand which Template are you referring to? thanks!

Referring to the feature-starter template. link
This contains examples that are now also on the website, e.g.


Dev details for app mTLS

I'm a real fan of cf and just learned about mTLS, had a search for mTLS inside cf and found https://docs.cloudfoundry.org/concepts/http-routing.html#tls-to-back-end.
Since its in the general concepts part of the webpage I got hooked and had a bit more research. As a dev I couldn't find any reference on something like use these certs for mtls or heres how you get started. There are a lot of references to set it up behind the scenes but again I couldn't find a part on which certs I should host or accept.
Is this meant to be? Did I miss something?

Hi @anita-flegg,
The tls (or mtls) traffic from gorouter to the app backend "just works". There is nothing that the app has to do. This isn't spelled out on the page linked and definitely could be.
This "just works" because gorouter does not talk directly to the backend app. It talks to the envoy sidecar. There is an envoy sidecar in every app container. The envoy sidecar has the correct certs needed to do mtls with gorouter. So the gorouter and the envoy commuicate via tls (or mtls), then the envoy proxies on the unencrypted traffic directly to the app process. Voila! The power of the CF platform.
 Router VM                   Diego Cell VM
┌───────────────────┐       ┌──────────────────────────────────┐
│                   │       │                                  │
│                   │       │                                  │
│                   │       │   App Container                  │
│                   │       │  ┌─────────────────────────────┐ │
│                   │       │  │                             │ │
│    ┌────────┐     │       │  │ ┌─────┐       ┌───────────┐ │ │
│    │gorouter├─────┼───────┼──┤►│envoy├──────►│app process│ │ │
│    └────────┘     │       │  │ └─────┘       └───────────┘ │ │
│                   │       │  │                             │ │
│                   │       │  └─────────────────────────────┘ │
│                   │       │                                  │
└───────────────────┘       └──────────────────────────────────┘

This is actually discussed in the section called Preventing mis-routes, but it's also needed earlier in the topic.
I've added this extra detail to the section called "TLS to apps and other back end services."


Early stopping

Does train.py do early stopping as mentioned in README.md? I can't seem to find the relevant section of code in train.py where early stopping has been implemented.

Hi @polars05 ,
Sorry for the confusion. The model will be trained indefinitely until manually terminated so that you won't miss any possible validation improvement. Another reason is the validation curves and convergence criteria vary in different hyperparameters and computational resources.
The model is saved whenever there is a higher validation mIoU anyway. You can consider it to be an early stopping with a manually determined grace period.

Thanks for the clarifications, @YangZhang4065! Out of curiosity, how many epochs did you train for and what criteria did you consider in choosing whether to (manually) terminate training?

In our experiments, PolarNet usually reached the best mIoU performance on the validation set within 20 epochs.


Gameplay Screen - Code Essences.

Code the behaviour of the essences that are atracted to the player when is close enough.
EXPECTED RESULTS
A EssenceBehaviour.cs file and a prefab. The essence is a small point of light that is atracted into the player when close.

Added EssenceBehaviour.cs and created on commit 0faa75b6fbafe4415b81d1f62fca29c0c3038417

Moved to testing after commit a68b5089fae6f586fcb4934feec925e74f410e74 . Enemies and boxes will drop them.


2018 edition support?

Hi, I'm attempting to use ctest2 with a -sys crate that uses edition = "2018", however it looks like that may be unsupported?
The proximate errors I'm seeing are:

error: expected identifier, found keyword crate

I suspect adding new edition support is non-trivial, but I figured I should ask. If adding it is too difficult, it may be worth documenting.

It would require a complete rewrite, see https://github.com/JohnTitor/ctest2/issues/6#issuecomment-678550173 and other issues. I'm afraid I don't have enough time to do this, but I'd love to see any PRs/suggestions/opinions, etc. about it!

That's sort of what I was afraid of :-) In the meantime I hacked around crate by replacing it with super (and super::super!) in a few places, so this one came off the front burner.


Performance 5x Slower PDFKit Document creation and unresponsive for CJK custom WOFF fonts.

Bug Report
Slow PDFKit Document creation and unresponsive, when WOFF type fonts are used.
No performance impact for the same font in TTF
Description of the problem
We are generating a text-only single-page PDF.
For languages Chinese, Hebrew & Japanese, we are making use of the below Google font in WOFF format downloaded from Google Webfonts helper.
Chinese - Noto Sans SC (1.5 MB) Download link Choose Historic support to get WOFF format.
Japanese / Hebrew - M PLUS 1p regular Download link Choose Historic support to get WOFF format.
For the above languages with the mentioned fonts, the pdf download takes around 8 seconds - 11 seconds for a single page.And it becomes unresponsive in Firefox.  However, for other languages, it is way less ~ around 1 -2 seconds.
With TTF it works better without any issues
Note: Unable to upload woff font in GitHub. So shared the link from where I downloaded it.
Your environment

pdfkit version: 0.12.10
Node version: 18
Browser version (if applicable): Chrome Delay is seen but in Firefox it becomes unresponsive.
Operating System: Windows

@Saranya-Sivanandham ,I face the  similar issue while using WOFF format.Sometimes its throw error.  Better to use TTF font. It will work fine.

Can you post sample code that shows the difference?
You can fork https://replit.com/@blikblum/minimal-pdfkit or post a complete node script here


Hr bestsplit

Displays best heart rate recovery for best splits length (time/distance)
Also works the other way, best heart rate increase (time/distance)

Génial Merci ! :)


Missing IN / NOT IN operator in the invalid_filter error message

Describe the bug
When sending an invalid filter, an error message explains all the filter operators but IN and NOT IN are missing.
{
  "message": "Was expecting an operation `=`, `!=`, `>=`, `>`, `<=`, `<`, `TO`, `EXISTS`, `NOT EXISTS`, or `_geoRadius` at `hemlo good doggo`.\n1:17 hemlo good doggo",
  "code": "invalid_filter",
  "type": "invalid_request",
  "link": "https://docs.meilisearch.com/errors#invalid_filter"
}

Expected behavior
IN and NOT IN should be listed.
This should be resolved on milli's side.
TODO

[x] Implement changes in Milli (only this step is available for external contribution) -> https://github.com/meilisearch/milli/pull/676
[ ] Release a Milli version containing these changes
[ ] Bump this new Milli version in Meilisearch and merge it into main

@irevoire I can work on this :)
Could you point out which file/ lines of code need to be changed?

Hey @Pranav-yadav, basically from what I see you need to update these two messages:
https://github.com/meilisearch/milli/blob/main/filter-parser/src/error.rs#L143-L148

Got it. Thanks!

@irevoire this PR https://github.com/meilisearch/milli/pull/676 should fix this issue :) Thanks.

@curquiza should I try to complete the remaining tasks of these issue or is it just for tracking at your side?

Hello @Pranav-yadav
This is for tracking only on our side, only the first step is available for contribution! I'll make it more clear on the issue 😊
thanks for asking!

Closed by #3036


Component proxy is undefined (hydration error with Async components)

Version
3.0.7
Reproduction link
http://vue-next-example.arijs.org/
Steps to reproduce
Create SSR application and attempt hydration with an app that uses Async components.
What is expected?
Hydration occurs smoothy.
What is actually happening?
Error is thrown "Uncaught (in promise) TypeError: Cannot read property 'proxy' of null"

@posva
I searched here for this issue and I found the issue #2626 , but I already tried the recommended solution there and it didn't help.
I'm not using Vite (yet), this is pure Vue v3.0.7.
Before I was passing a Vue.defineAsyncComponent() to the VueRouter configuration, but I already replaced that with a function that return a promise that returns the component definition.
I also am enhancing the Vue.resolveComponent = function myOwnFunction() {...} that loads the components based on the name and this is returning a Vue.defineAsyncComponent() value.
The error is here:
  function createAppAPI(render, hydrate) {
      return function createApp(rootComponent, rootProps = null) {
      // ... snip ...
          const app = (context.app = {
          // ... snip ...
              mount(rootContainer, isHydrate) {
                  if (!isMounted) {
                  // ... snip ...
                      return vnode.component.proxy; // <== vnode.component is null

Below is the value of vnode:
({
  "__v_isVNode": true,
  "__v_skip": true,
  "type": {
    "name": "AsyncComponentWrapper",
    "setup": setup() {
      const instance = currentInstance; // already resolved if (resolvedComp) { return () => {…
    },
    "__asyncLoader": () => {…}
    "__proto__": Object
  },
  "props": null,
  "key": null,
  "ref": null,
  "scopeId": null,
  "children": null,
  "component": null,
  "suspense": null,
  "ssContent": null,
  "ssFallback": null,
  "dirs": null,
  "transition": null,
  "el": null,
  "anchor": null,
  "target": null,
  "targetAnchor": null,
  "staticCount": 0,
  "shapeFlag": 4,
  "patchFlag": 0,
  "dynamicProps": null,
  "dynamicChildren": null,
  "appContext": null
})

Before I was getting a warning from VueRouter saying that I couldn't use Vue.defineAsyncComponent() on the routes definition. After I changed it, I'm no longer getting that warning, but somehow I still have the vnode.component is null error.

Do you have the repository? If you can, make sure it's boiled down without the router

@posva @HcySunYang
Here it is, without VueRouter: http://vue-next-example.arijs.org/no-router/
Thank you for looking into this.

Hey @rhengles , this is a bug, now you can’t use async components as your app's root.
Use cases that will fail:
const app = createSSRApp(defineAsyncComponent({/* ... */}))
app.mount('xxx')

As a workaround, you can use functional components or stateful components to wrap it:
const asyncComp = defineAsyncComponent({/* ... */})
const app = createSSRApp({ render: () => h(asyncComp) })
app.mount('xxx')

It doesn't make sense to use an async component as the root of the app though because it's displayed right away. You should wait for the dynamic import instead and then create the app if the component is only known at runtime. Otherwise, you should really remove the dynamic import because it will have a negative impact in performance as the dynamic import would always take place
import(myDynamicComponentPath).then(component => {
  const app = createSSRApp(component)
  // ...
})

@posva The sense is that I treat every single component as async in my app. I don't use the public instance returned from .mount() and I think most people don't either.
Don't worry about performance because when the app is prerendered, every component in the page is cached and the load is equivalent to Promise.resolve(component).
I could apply the workarounds suggested here, they're not hard. They just feel unelegant, perhaps because I don't understand the importance of only mounting sync components and not async components. If it is just because of the return of the public instance, I don't use that.
One of the key things that made me love Vue instead of React (and hating angular) is because I feel that Vue doesn't dictate how I should build my app, it just gives the tools and freedom to build it any way I like it.
You may say, "Well React is pretty much as unopinionated as Vue, it also gives you a lot of freedom", well the exception here is because of JSX. It pretty much requires a build step. It's possible to compile JSX on the front end, I've done it, but then you need to include the entire babel (or buble) library in your frontend, it is a lot of weight.
And don't even suggest to use the called "hyperscript" or writing "React.createElement()" calls by hand, that's very cumbersome. In contrast with that, using templates is closer to native html, simpler to write and to be parsed. Therefore Vue is the best option of a framework that has great documentation, tooling, support, performance, market share and flexibility.
I'm just sad that there's this subtle difference between components and async components and that they're not interchangeable, that async components are a second class citizen...

The sense is that I treat every single component as async in my app.

You should absolutely avoid treating all components as async ones. Only do it for components that are not always displayed right away, e.g. a modal, or the v-else branch that contains a heavy component like an inline editor.

I'm just sad that there's this subtle difference between components and async components and that they're not interchangeable, that async components are a second class citizen...

Components and async components should have the same usage and be automatic like they are right now (which is what makes them 1st class citizens), but you cannot use an async component everywhere because you shouldn't in the first place.

I could apply the workarounds suggested here

To be clear, the part I'm suggesting is not a workaround. Don't do this:
createSSRApp(defineAsyncComponent(() => import('./MyComponent.vue)))

Do
import MyComponent from './MyComponent.vue'
createSSRApp(MyComponent)
// or createApp(MyComponent)

The root component should not be async

@posva Thank you for your insightful input, and for listening and taking your time to respond.
I want to emphasize that you do not need to be concerned with performance, because when the app is shipped to production, they will be cached inside the app and the "load" won't have to make any network requests. So the async component will be resolved instantaneously for all intents and purposes, I just want the async API for the sake of simplicityness.
I'm not doing this:
createSSRApp(defineAsyncComponent(() => import('./MyComponent.vue)))

I'm doing this (simplified for illustration):
function resolveComponent(name) {
  const map = {};
  map["cached"] = {
    setup() {...},
    render() {...},
  };
  if (name in map) return Vue.defineAsyncComponent(() => Promise.resolve(map[name]));
}

createSSRApp(resolveComponent("cached"));

I simply want to be able to treat every component as async because that makes the code simpler and more elegant. There's no need to worry about performance.
I just don't understand the following statement:

The root component should not be async

Is there any reason for this, will something break other than the public instance returned by .mount() ?

Please just give me my footgun, I promise not to point it any dangerous ways 😅
But see, I know what I'm doing, I would very much like that the framework i'm using would not fight me back and make my job harder.
If Vue wants to hand-hold novice users, maybe that enforcement should be made in a higher level, like vue-cli, vite-template-vue, etc. But the base library should not assume to know better than the user.
But maybe the correct solution here would be for me to write my own async components, this way they would always have an instance.


K8SSAND-1138 ⁃ additionalSeeds does not accept DNS

When setting additionalSeeds It is from my understanding expected to use the DNS name of the service xxx-seed-service created by cass-operator but it looks like the API is expecting an IP address.

Are there any requirements needed that I missed using that field?
If not, I'm wondering whether it is expected behavior and the reason?

From the code POV we can see:
The API seems to expect a list of strings:

https://github.com/k8ssandra/cass-operator/blob/0a85469787be456edf54ed5fc621a746acb6c0eb/apis/cassandra/v1beta1/cassandradatacenter_types.go#L201

A check on format happens here:

https://github.com/k8ssandra/cass-operator/blob/0a85469787be456edf54ed5fc621a746acb6c0eb/pkg/reconciliation/construct_service.go#L159

┆Issue is synchronized with this Jira Task by Unito
┆friendlyId: K8SSAND-1138
┆priority: Medium

Hi, the additionalSeeds is a list of DNS or IP addresses which one wants to use as the additional seeds in Cassandra. The service clusterName-additional-seeds is result of this setting - it's the DNS Name that Cassandra sees. cass-operator sets the additional-seed service to include the addresses you set in the CassandraDatacenter's additionalSeeds property.
The integration test describes pretty well the intended behaviour:
https://github.com/k8ssandra/cass-operator/blob/master/tests/additional_seeds/additional_seeds_suite_test.go

That is what the operator is returning:
Endpoints "xxx-operator-additional-seed-service" is invalid: [subsets[0].addresses[0].ip: Invalid value: "xxx-seed-service.az1": must be a valid IP address, (e.g. <IP_ADDRESS> or 2001:db8::ffff), subsets[0].addresses[0].ip: Invalid value: "xxx-seed-service.az1.svc.cluster.local": must be a valid IP address]

What version of cass-operator are you using? The resolveAddress should not return the hostname in any case or try to add it to the seeds-service.

What version of cass-operator are you using? The resolveAddress should not return the hostname in any case or try to add it to the seeds-service.

image: datastax/cass-operator:1.6.0

That's your problem then, the hostname support was added in 1.7.1. As for multi-DC configuration, while it will accept the DNS Name, Cassandra itself does not. So it only resolves it to the IP, but does not notice if that IP changes. We're building a multi-DC solution that automates this process in the k8ssandra-operator. However, otherwise your approach works.

Thank you, I have verified with latest, it's working as expected.


Litmus7 doesn't emit atomic_ints properly

When playing around with the object-code splitmus in my object-file-support branch, @johnwickerson and I noticed that litmus7, even in -c11 true mode, doesn't output atomic_ints.  It's unclear as to whether this is ACT's problem or Litmus7's, but I'm making an issue here to track it.

When using c_litmus_indirect, this is no longer a problem, and so I'm closing this.  (It's still a problem in obj_splitmus.

)


test: fix bugs found on travis, remove linux clang compiler tests

Okay, so 2 things here:

The tests seem to fail on Windows, so until they're tested on a machine, AppVeyor support will be stalled.

For some reason, the Linux:Clang compiler tests cannot find std::not_fn, so I've removed them for now.


i18n(de): translate guides/dev-toolbar.mdx

Description (required)

update guides/dev-toolbar.mdx

Related issues & labels (optional)

Suggested label: i18n

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

File
Note

de/guides/dev-toolbar.mdx
Localization added, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


rename show-file-list 提示文案错误

提示文案错误：
[Element Migrating][Attribute]: show-file-list is renamed to show-file-list

多谢提醒。#3510


addPin from chisel2

chisel2.Module had an addPin method that allowed the user to add a pin to the Module outside of its io (Actually, it would add it to the io Bundle; however, I am proposing that it adds the pin in the same hierarchy as clk, reset, and io. Into chisel3.Module.ports).
This was useful (essentially requisite) for writing libraries that needed to thread signals across Module boundaries. As an analogy (to justify the behehavior of bypassing io), if io is similar to a function's signature, addPin is part of the architecture for throwing exceptions from inner Modules.
Ideally, the chisel3 addPin would actually check to make sure no accidentally overwrites occur.

Should this be part of Chisel3 or should things like this be handled as FIRRTL transformations?

I always thought this would be handled as a FIRRTL transformation in Chisel3. Chisel3 frontend no longer has the entire hardware graph like Chisel2, so it's harder to do anything but the simplest operations. The _parent links are also private, so if a goal was to propagate signals up the Module hierarchy, that would mean either exposing more implementation details or having a purpose-built API, neither of which sound like clean ideas.

Philosophically, I consider addPin as part of the exposed chisel2 API because it is not really used internally (the FAME Backend calls it once) and was actually documented. Removing it is a major backwards incompatibility not mentioned in any of the migration literature. (I say major because making up for the lost behavior requires, at least, a new, not-yet-written FIRRTL pass.)
Specifically adding addPin as a FIRRTL pass would be too odd. (You would essentially be adding a FIRRTL pass that takes a description of the pin and the module it should be in and then adds it into the module. This is something the frontend is beyond capable of doing given it already has the Module.ports infrastructure.)
So, it would make more sense to add a pass to implement the broader behavior desired (threading information across Module boundaries). Basically, I am concerned with the cleanliness of adding a FIRRTL pass that changes the functionality of the circuit. First, there is not yet any way to attach extra information to the Module or its nodes. Second, the FIRRTL passes all sit in a separate binary so passing this extra information would require writing serializers/deserializers for extra data and modifying the FIRRTL binary main functions to be able to intake the extra data (as well as modifying build flows to transit the data). Then, this sort of modification to the graph has to be done very early (particularly, before width inference) so I need a way to make sure future restructuring of FIRRTL passes keeps this pass in the right place. Finally, it seems like FIRRTL is in a lot of flux (the past month rewrote the tree mapping API) so maintaining this pass would require a bit of effort.
I can understand wanting to move this into being a FIRRTL pass (and can see broadly how you would do is.) However, doing that seems like it would require a lot more work and I was hoping to restore this behavior sooner rather than later (even if future work transitioned it to being a FIRRTL pass).

The one thing that concerns me about a FIRRTL pass is that this would do functional changes to the circuit. This partly inspired my insistence that the pass has to run first.
As far as I know, none of the other passes actually do this yet. Also, this would blur the line on whether the 'extra information' is actually 'extra' since it is necessary information to describe graph function. Similarly, I am hesitant to call the extra information a type of annotation for the same reason: annotations thus far haven't been necessary to describe the function of the circuit.

Yeah, I agree that addPin as a FIRRTL pass doesn't make sense, but rather you want the higher level goal (like "hook up BIST pins") as the pass.
Anyways, do you still have enough non-private information in Chisel3 frontend to make proper use of addPin? Is this actually an objectively good API that should continue to be supported, especially considering how hardware graph is now private in Chisel3, that FIRRTL will have annotations (someday), and that FIRRTL and Chisel can actually be in the same binary (just need to change the Chisel3 emitter to directly generate FIRRTL data structures).
Assuming reimplementing addPin is the least-worst option if you needed this functionality now, what would be the plan for getting rid of it once FIRRTL transformations are straightened out? You probably aren't the only user of addPin, and others uses may not be clean or principled. Continuing support for it will mean more inertia and a less clean API break from Chisel2 to Chisel3, and we may end up having this discussion again when we do want to nix Chisel3 addPin in favor of FIRRTL passes for good.

I am still very concerned over introducing passes that are changes to the functionality of the graph. Given that firrtl does not yet support custom passes (and even then, this one is particularly sensitive to position), I would have to change firrtl anyway. But then, if I have to fork something, it would end up being far less work in the long run to change chisel3.
It isn't clear where the line is regarding hardware graph elaborations. I agree it makes sense to use a FIRRTL pass for transformations and adjustments that require a holistic view of the hardware graph. However, in this case, the adjustments can be safely done on a partially-elaborated graph.
Also, there is still the matter of timeline. Firrtl does not seem to be in a state to reliably support this pass at this time and it is unclear how long it will be until it is given all the pre-requisites. I'm unable to table this until firrtl is sufficiently fixed up.

So is your objection to functionality-altering passes on principle or because you don't think the implementation isn't ready yet (or both)? If the first, aren't passes just a more structured way of dealing with the circuit graph that was exposed in Chisel2? Can passes be structured in a way that limits scope (say, only altering a Module's contents) for additional safety?
Anyways, I think there are several separate questions that we need to come to a consensus here:

Is FIRRTL the best solution for doing this, in the long term?
Is addPin actually an objectively good Chisel3 frontend API that we should continue to support?
If addPin won't be part of the Chisel3 frontend API, what is the short term solution and what is the transition plan away from it (accounting for that people don't always want to fix their code to work with a new version, and that the Chisel2 -> 3 transition may be the best time to make breaking changes)?

On the initial question, it is moreso the latter. If I was forced to assume FIRRTL was etched in stone, the former would definitely apply. Although, there definitely are philosophical concerns with trying to encode custom, mandatory functional information into the graph.
Part of the confusion is that chisel3 draws a very firm line between 'chisel3' and 'firrtl' as emphasized by them living in separate binaries and repositories. It seems to make the most sense to pass a fully specified design across that boundary.

I contend it isn't the 'best.' Where do you draw the line on what is a chisel3 feature? Chisel3 is currently weak on multi-clock domains. Should it just drop all multi-clock domain support and tell the user they need to use a FIRRTL pass to rewire the clocks in their circuit?

Further, it is a matter of using the proper tool for the job. Even if FIRRTL was more polished, the pass solution is 'heavy:' it uses a completely new API and adds a the backend component separate from the frontend components. (I also don't want to understate the increased risk in modifying the build flow in two places and ensuring the proper information is transited between them.)
For example, a scala library should prefer exposing an API of regular function calls to internal components versus a macro annotation that rewrites the user source code to invoke their internals directly. Similarly, chisel3 uses scala reflection in places rather than investing in a compiler plugin that dumps the raw typer output.

My main critique is that addPin (and related operations) is still part of building/appending to the hardware graph. You are just adding more information versus not transforming/changing already present nodes. I don't need a holistic view of the completed graph so it seems silly to wait.

While I acknowledge there are some advantages to this 'feature,' the chisel3 frontend already does allow one to transform the hardware graph via unguarded re-assignment to wires and registers. The old assignment is then completely lost (although, oddly, it may still interfere with width inference).

I don't seem a stable short-term solution that involves a FIRRTL pass. Also, is the chisel3 API already considered 'locked'? It looks like there is still plenty of cleanup to do on other parts, particularly for earlier error detection and reporting.

I don't think the Chisel3 API is considered "locked" until we do a public non-alpha (or even non-beta) release. And even then, I imagine it will evolve like any language, but probably with more emphasis on not breaking backwards compatibility.
Another question could be what exactly a fully specified design means. For example, a general pass could be developed that makes cross-module connections across any pins based on annotations. So in a sense, the Chisel3 frontend emitted design (with annotations) is fully specified, the FIRRTL just lowers the annotations to wires.
I'm not sure there is a very clear line between what Chisel3 and FIRRTL does, at least in terms of user-facing functionality (in terms of implementation, I think it's building the hardware graph one module at a time vs. traversing the graph with a complete view of all modules - obviously, some things straddle the line). Perhaps this is something that should also be better documented (much like the Scala-land vs. Chisel-land split)?
As for addPin, I think it's arguably "unsafe", especially in the context of a statically-typed language. Normally, you expect the io to be very well defined per-class, and you don't expect this to change across instances. addPin breaks those guarantees, so now the clean Module-as-a-blackbox-with-specified-io abstraction might not hold anymore, since you can muck around in a Module's externals from outside.
Are there other ways to accomplish the same thing without addPin? Like actually threading the necessary pins through explicit io? Or do you really need runtime-dynamic pins?

The idea was not to add things to the io Bundle but instead to the ports of the Module.
Module by default has ports io, clk, and reset. This would add ports at that level.
It would all still be statically typed as the val storing the added pin would still retain the appropriate static type and the type of io would not be changed. chisel3 is clearly still building the entire Module graph and then serializing it into a FIRRTL data structure so it isn't clear what distinction you are making there.
The fact that the Module internals are being supplemented by external actors is intentional since the goal  is to avoid polluting the module body and io with this side channel information. For the same reason, using the explicit io would not work.
There may be ways to make the hiddenness partially explicit, similar to how the IO Monad works to expose IO side-effects to the type system; however, this would require even more extensive reworks of Chisel internals.

https://github.com/ucb-bar/chisel3/blob/09958f63470697188e1ed1a01c7ea39b8c56e7ef/src/main/scala/Chisel/Aggregate.scala#L307

Programatically generated cross-module connections should be implemented as a FIRRTL transform.
We need to make that a standard chisel3 feature with annotations.

This is ostensibly fixed with a combination of Record, and/or the proposed Module Hierarchy change with multiple IO's so I'm going to close this as a duplicate issue.


def place not consistant with def break_up_space

Hi,
I have an issue with 2.0.0 l.28 in box_packer.rb
place returns an array of array of int but break_up_space expects a hash.
space = "{:dimensions=>[11, 11, 1], :position=>[10, 0, 0]}"
item = "{:dimensions=>[10, 6, 2], :weight=>50}"
# placement = place(item, space) returns "[[10, 6, 2], [10, 2, 6], [6, 10, 2], [6, 2, 10], [2, 10, 6], [2, 6, 10]]"
break_up_space(space, place(item, space))

Hey man, thanks for the filling the issue. It's been a while since I wrote anything in Ruby and wasn't being weary enough of the implicit returns. It should be fixed now, hopefully.
You wouldn't be able to give me reproduction steps so that I add a test for it.

Hi,
I don't have any example on hand but I must have try with the example from
the previous issue. ☺
Le 21 nov. 2016 21:23, "Max White"<EMAIL_ADDRESS>a écrit :

Hey man, thanks for the filling the issue. It's been a while since I wrote
anything in Ruby and wasn't being weary enough of the implicit returns. It
should be fixed now, hopefully.
You wouldn't be able to give me reproduction steps so that I add a test
for it.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/mushishi78/box_packer/issues/5#issuecomment-262055974,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABngQJIi5deeUHGCnhfayZllJGNAaHaSks5rAf27gaJpZM4KyZLy
.


Add paddingRight to placeholder for sticky in row flexbox

This PR will add paddingRight to placeholder for sticky in row flexbox. For exmaple:
<StickyContainer style={{display:"flex"}}>
    <Sticky>{({style}) => (

left

    )}<Sticky>

right

</StickyContainer>

Without paddingRight, the "right div" will overlap the "left" div.

Thanks for contributing! This looks good and I don't see any issues testing locally, but I'm thinking it should go out with 6.1 (instead of as a patch) because it changes behavior. How's that sound?

@vcarl Should I change from master to 6.1 for merge into?

Awesome, appreciate it. I'd like to see about #257 before releasing, thanks a bunch for the PR!

@vcarl
I think I introduce a bug in this PR.
When window's width is decreased,
if paddingRight is not set, the the placeholder's width will default take 100% and <Sticky> style will update with correct width.
Since I add paddingRight, the width will not be update.
You may want to revert this PR.

I'll take a look! Since the PR isn't released yet, I'll see about fixing the bug without a revert. If you find a solution I'm happy to merge it.


WIP: query: Be pessimistic about strict stores

We want queries with ?partial_response=0 to be sound and complete.
Unfortunately today many queries can succeed without an error while the
system is heavily degraded.
Make strict stores cover a long time range by default until the right
time range has been discovered. We might need to extend this to labels
too. Also on many consecutive Metadata failures we should revert to a
default minTime and maxTime.

[ ] I added CHANGELOG entry for this change.
[ ] Change is not relevant to the end user.

Changes

StoreSet

Initialize storeRef maxTime to the maximum possible value
The first time we set the status, initialize minTime and maxTime to the provided values. This is for initializing with an error case.

Verification

go test ./pkg/query only so far

In general we prefer availability (partial_responses) but I have uses cases where a wrong non-partial is worse than an error. I have started to use strict stores but this requires the query component to communicate with that store at least once to have the desired impact on ?partial_response=0. The easiest option seems to default initialize maxTime and get the store included in every query.
It's WIP to mostly start a discussion. I have seen two more cases where partial_response=0 will succeed but should give an error.


chrome extension with angular: Unknown provider: routeSegmentUrlFilterProvider

I'm trying to use angular in the popup.* of a chrome extension, and deployed everything as usual, plus ngCsp. When loading the popup, however, I'm getting
Error: [$injector:unpr] Unknown provider: routeSegmentUrlFilterProvider <- routeSegmentUrlFilter
http://errors.angularjs.org/1.3.15/$injector/unpr?p0=routeSegmentUrlFilterProvider%20%3C-%20routeSegmentUrlFilter

Any idea what might be going wrong here?

Steps to reproduce:

Clone from https://github.com/paperhive/paperhive-chrome-extension
$ npm install && bower install && DEBUG=1 gulp; this should give you a build/
Install the extension: Open Chrome, chrome://extensions, Load unpacked extension, choose ./build/
Click on the extensions icon, right click on the popup, Inspect element, Console. The error message appears.

Never mind, the error was due to an oversight in copy-and-pasted code.