How to generate d.ts from external directory

Describe the bug
I used paths import some interface from external directory,It's not under in my app directory,below is my tsconfig.json
{
    "compilerOptions": {
        "target": "es6",
        "module": "es2020",
        "moduleResolution": "node",
        "experimentalDecorators": true,
        "emitDecoratorMetadata": true,
        "strict": true,
        "removeComments": true,
        "skipLibCheck":true,
        "sourceMap": true,
        "outDir": "./dist",
        "declaration": true,
        "pretty": true,
        // "strictNullChecks": true,
        "lib": ["esnext", "dom"],
        "baseUrl": ".",
        "paths": {
            "@serverInterface": [ "D:/projects/other/base/interface" ]
        }
    },
    "include": ["src"],
    "references": [{ "path": "./tsconfig.node.json" }]
}

Then i used vite-plugin-dts in vite.config.ts
import { defineConfig } from 'vite'
import dts from 'vite-plugin-dts'

export default defineConfig({
  resolve: {
    alias: {
      '@serverInterface': "D:/projects/other/base/interface",
    },
  },
  build: {
    lib: {
      entry: './src/index.ts',  //库的入口
      formats: ['es', 'umd'],
      name: 'calculator', //这里是你的包的名字，假设是firstadd
      fileName:"index"
    },
    rollupOptions: {
      output: {
      },
    }
  },
  plugins: [dts({
    // copyDtsFiles: true,
  })],
})

The actual result is that the d.ts is not packaged into the dist directory.
Reproduction
the external directory can't Reproduction
Steps to reproduce
No response
System Info
npx envinfo --system --npmPackages '{vite,@vitejs/*,vite-plugin-dts}' --binaries --browsers
Need to install the following packages:
<EMAIL_ADDRESS>Ok to proceed? (y) y

  System:
    OS: Windows 10 10.0.22621
    CPU: (20) x64 12th Gen Intel(R) Core(TM) i7-12700H
    Memory: 3.33 GB / 15.80 GB
  Binaries:
    Node: 18.13.0 - D:\Program Files\nodejs\node.EXE
    npm: 8.19.3 - D:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.22621.1555.0), Chromium (112.0.1722.64)
    Internet Explorer: 11.0.22621.1
  npmPackages:
    vite: ^4.3.5 => 4.3.5
    vite-plugin-dts: ^2.3.0 => 2.3.0

Validations

[X] Read the FAQ.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] The provided reproduction is a minimal reproducible example of the bug.

The errors
> build
> vite build

vite v4.3.5 building for production...
✓ 1 modules transformed.
dist/index.mjs  1.68 kB │ gzip: 0.81 kB
dist/index.umd.js  1.50 kB │ gzip: 0.87 kB

[vite:dts] Start generate declaration files...
src/index.ts:1:50 - error TS6059: File 'D:/projects/other/interface/index.ts' is not under 'rootDir' 'D:/projects/calculator'. 'rootDir' is expected to contain all source files.

but I already add to rootDir
import { defineConfig } from 'vite'
import dts from 'vite-plugin-dts'

export default defineConfig({
  resolve: {
    alias: {
      '@serverInterface': "D:/projects/other/interface",
    },
  },
  build: {
    lib: {
      entry: './src/index.ts',  //库的入口
      formats: ['es', 'umd'],
      name: 'calculator', //这里是你的包的名字，假设是firstadd
      fileName:"index"
    },
    rollupOptions: {
      output: {
      },
    }
  },
  plugins: [dts({
    rootDirs: ["./src", "D:/projects/other/interface"],
  })],
})

same problem.

same problem width 2.3.0。  External directory that  setting by tsconfig includes can be generate with version 1.7.3, although there are errors. such as  import type { default } from 'ol/Map';

same problem width 2.3.0. External directory that setting by tsconfig includes can be generate with version 1.7.3, although there are errors. such as import type { default } from 'ol/Map';

soleved this by config root option, viteDts({
root: "../",
....
}. version 2.3.0

Desc
pnpm workspace project:

demo/src/app.vue
demo/vite.config.ts
demo/package.json

util/date.ts
util/package.json

//demo/src/app.vue
import {formatData} from 'util'

Problem
build finished. ✅
there are no util/date.d.ts file
Help
So  how to generate workspace package ?

Desc
pnpm workspace project:

demo/src/app.vue
demo/vite.config.ts
demo/package.json

util/date.ts
util/package.json

//demo/src/app.vue
import {formatData} from 'util'

Problem
build finished. ✅ there are no util/date.d.ts file
Help
So how to generate .d.ts workspace package ?
you may just add src to be included in  tsconfig settings.
tsconfig.json add the util folder into include like this  inlcude: ["src", "../util"]` or include all other folder like this  "include": ["../**/.ts", "..//*.d.ts", "..//.tsx", "../**/.vue"]

Desc
pnpm workspace project:

demo/src/app.vue
demo/vite.config.ts
demo/package.json

util/date.ts
util/package.json

//demo/src/app.vue
import {formatData} from 'util'

Problem
build finished. ✅ there are no util/date.d.ts file
Help
So how to generate .d.ts workspace package ?
you may just add src to be included in  tsconfig settings.
tsconfig.json add the util folder into include like this  inlcude: ["src", "../util"]or include all other folder like this "include": ["../**/.ts", "..//*.d.ts", "..//.tsx", "../**/.vue"]`

Everything is ok now.
add config:
//demo & util parent dir.
root: "../"

Does it still exist in 3.0.0-beta.2?


Origins does nothing with textures or changing blocks or anything. This seems like you reported it to the wrong mod.


Remove subject (topicName) from TopicMetadataV2Request and validate topicName from url

@bretrbs @montemisa what is the status of this PR? Ready for review?

Codecov Report

Merging #408 into master will decrease coverage by 0.40%.
The diff coverage is 92.00%.

@@            Coverage Diff             @@
##           master     #408      +/-   ##
==========================================
- Coverage   91.18%   90.77%   -0.41%
==========================================
  Files         139      140       +1
  Lines        3029     3166     +137
  Branches      136      141       +5
==========================================
+ Hits         2762     2874     +112
- Misses        267      292      +25

Impacted Files
Coverage Δ

...src/main/scala/hydra.ingest/modules/Algebras.scala
0.00% <ø> (ø)

.../hydra/kafka/endpoints/TopicMetadataEndpoint.scala
93.75% <50.00%> (ø)

...ydra/kafka/serializers/TopicMetadataV2Parser.scala
90.07% <75.00%> (-1.06%)
:arrow_down:

...n/scala/hydra/kafka/algebras/MetadataAlgebra.scala
95.83% <92.85%> (-4.17%)
:arrow_down:

...rc/main/scala/hydra.ingest/modules/Bootstrap.scala
100.00% <100.00%> (ø)

...la/hydra/kafka/endpoints/BootstrapEndpointV2.scala
100.00% <100.00%> (ø)

...c/main/scala/hydra/kafka/model/TopicMetadata.scala
85.00% <100.00%> (ø)

...a/hydra/kafka/model/TopicMetadataV2Transport.scala
100.00% <100.00%> (ø)

...cala/hydra/kafka/programs/CreateTopicProgram.scala
100.00% <100.00%> (ø)

...ala/hydra.ingest/http/HydraIngestJsonSupport.scala
84.84% <0.00%> (-15.16%)
:arrow_down:

... and 7 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 7c55e22...2fc804a. Read the comment docs.


Dismiss only temporary until pagereload

The Banner is appearing again and again and does not stay hidden after Dismiss had been clicked.

https://demo.t3pack.com/en it shows up at first load and when you reload the page again. The same happens when you first load a subpage and reload the same page again.
https://www.whatsmybrowser.org/b/T4QRO

Okay, thank you for the link.
The problem is that you've got cloudflare in between the user and the site which is cacheing the page with the banner and re-serving it when the user reloads (despite the Cache-Control: max-age=0 header).
We probably need to set a Cache-Control: private header whenever we serve the banner. We could add an option for this in the plugin config.
In the meantime you could have a look at your cloudflare configuration and see if you can get it to be less aggressive with its cacheing until we can release a fix.

Thanks, Ari - I checked it on Cloudflare and it isn't so clear what needs to get reduced, to be honest. Nevermind as right now we are still in the development phase until mid of next month and we are testing out the banner right now only on the demo site where we try to set up one Grav with most plugins we might need are enabled, so customers can see what might be possible also for their own sites. To add this option to config would be a good idea I think as many actually run their sites via Cloudflare. Thanks for your help. Please let me know when the new release with the fix will be available.

If I can just add header('Cache-Control: private') in onOutputGenerated() then I'll be able to get a fix up tomorrow. However I suspect Grav might overwright that header later in the lifecycle, in which case I'll have to explore the API in order to add it to the page frontmatter or something which might have to wait until I'm back from holiday next week.

Thanks, Ari, for your efforts, but enjoy your holiday first!


Include separate metrics for each HTTP error code

This will allow us to distinguish between server errors and
user/input errors, which will let us specify alerting better.
Specifically, for projects like Schema Registry we may want to alert only on 5xx errors and not 4xx errors.

@confluentinc It looks like @cyrusv just signed our Contributor License Agreement. :+1:
Always at your service,
clabot

Thanks @mageshn they are addressed


Member updates 12.15.21

Pre-submission checklist:
Please check each of these after submitting your pull request:

[x] Are you only including a repo_url if your project is 100% open source? If so, you need to pick the single best GitHub repository for your project, not a GitHub organization.
[x] Is your project closed source or, if it is open source, does your project have at least 300 GitHub stars?
[x] Have you picked the single best (existing) category for your project?
[x] Does it follow the other guidelines from the new entries section?
[x] Have you added your SVG to hosted_logos and referenced it there?
[x] Does your logo clearly state the name of the project/product and follow the other logo guidelines?
[x] Does your project/product name match the text on the logo?
[x] Have you verified that the Crunchbase data for your organization is correct (including headquarters and LinkedIn)?
[ ] ~15 minutes after opening the pull request, the CNCF-Bot will post the URL for your staging server. Have you confirmed that it looks good to you and then added a comment to the PR saying "LGTM"?

Build failed because of:
Empty twitter for Spotinst Functions: https://twitter.com/spot_hq
Empty twitter for Karmada: https://twitter.com/karmada_io
Huoxian Security (member)  homepage_url Https://www.huoxian.cn should start from http:// or https://


changing a setting in the MRTK configuration is too difficult for new users

Describe the bug
The first time I used the MRTK configuration settings I was confused about how they work. Now that I understand it's not too bad, but they can still be quite cumbersome to change. This will be one of the first things that users experience with the MRTK and we should make this easier.
In my opinion, usability problems include:

Very deeply nested settings.
Read-only settings that must be cloned before they can be edited. (Combined with the nesting, this requires you to clone multiple times, with different subsections and subsubsections.)
Clone button brings up dialog with options that seem unnecessary.
Cloned settings take you out of context from viewing the whole tree to viewing a subsection by itself. You have to reorient yourself and reexpand things to find the setting you wanted to change.
This works differently than the standard behavior of settings in the inspector that Unity developers would be used to. I wouldn't claim that everything is absolutely ideal about Unity's settings approach, but the other Unity software I have used has settings that are easy to change and work in a familiar well-understood way.

To reproduce
See this video which demonstrates the steps which must be performed to change a setting, from the perspective of a new user:
ChangingMrtkSetting.zip
4 minutes. Dozens of clicks. Lots of opportunities for confusion. Just to change a setting from Gesture to Articulated.
Expected behavior
Changing an MRTK configuration setting is obvious and easy. Preferably works in a way that will feel familiar to experienced Unity developers.
Your Setup (please complete the following information)

Unity Version 2018.3.9f1
MRTK Version 2.0 RC1 Refresh

Target Platform (please complete the following information)

Any

This may be related to #3545, but I think that's a larger issue. It looks like a fancy design patterns thing that I can't really fathom, so I wanted to open this issue just to focus on the usability aspect of changing configuration settings. But they may be interrelated.

This is something that many folks have raised already, and something that we're aware of. We're thinking about ways that we can address this going forward.
The issue linked above is designed to make things less painful, though obviously because there's still the single massive object and it's profile there's still that problem.

Here are some potential alternative ideas for addressing this:

Put settings on regular old Unity game objects in the scene. Everything would understand how this works and it would be easy to extend/browse/add/remove different components. MRTK could include a default settings prefab. Unity makes it easy to override a prefab in your scene, accepting its defaults and overriding particular settings without duplicating the settings that are inherited. (Unity also now has new prefabs features with nesting and inheritance that I haven't tried yet, but seem like they would be helpful.) The extensibility of MRTK (ability to pull settings from multiple independent components) would complicate this somewhat, but I bet we could find an approach for automatically pulling together a scene object with children containing the settings for just the systems you are using. Embracing an approach like this could allow also allow us to remove special case code for MRTK's unique way of making settings and this would be easier to maintain and easier for developers to extend by adding new functionality and new MRTK components.
Just clone everything right off the bat. As soon as you make an MRTK object make a settings file and also clone all the subsettings right next to it. Now everything is editable. (Not sure what would happen when new subsections are added in the future--hopefully they could automatically clone the new sections when a previous project is opened?)
Pack all settings into a single file that can be cloned all at once. Not sure how you'll back the extensible set of subsections within this file. Would require custom serialization work?
Auto-clone on edit. Make everything editable. Whenever you edit a field that is still using a default settings it will, behind the scenes, automatically clone that section creating a new file in the generated CustomProfiles folder. If you don't like that, at a later time you can always move/rename this file if you want.

Note: There may be a better solution. I'm just throwing out some options. Ideally, there's a way to simplify this so that the settings system itself can be simple and easy to understand/maintain.

I think that going forward something that spawns out of #1 is probably where we want to go, as #2-4 are kinda just bandaids on top of the system. We could do a lot of work making inspectors nicer, or making cloning more understandable, but at the end of the day it's still such a foreign concept that new users will still need to pay that tax.
I just want to be transparent here that doing something like #1 would need to be thought through with perhaps a larger change in the way we make MRTK objects used (i.e. monolithic vs individual components), and is something we'd need to take significant time and due diligence in doing.

Thanks for the feedback @ForrestTrepte
I'm def not a fan of 1 as it's the breaking from the Monobehavior that's the goal here, and one of the key principles behind the original design. (Even newer Unity stuff is moving towards more ECS and DOTS which all try to break from this same thing) We tested and measured that it was a 60-70% increase in speed. Doing 1 goes back to the way things used to be.
2 is already doable, and is one of the two options on the MixedRealityToolkit GameObject when you first configure the system. Part of why we didn't just clone right away was we wanted to tell the story that everything should just work out of the box. Like magic. With a single click. I think that's a powerful story.
3 is kinda a stretch, as there's a lot of data being stored, even for a single profile. (Take a look at the mapping profiles, big arrays). Each profile is a ScriptableObject and gets serialized as such.
Now 4? Yes, love this idea. I think this is the most interesting and the best solution. I'm already thinking about how to accomplish this.

Thanks for explaining the thinking behind the original design, Stephen. I'll admit that #1 is my preference because it is more familiar and easy to use/understand. You do raise a point, though, about game object overhead. When I developed a Unity game with tens of thousands of units I had to break with game objects for performance reasons. I am surprised that for settings and small numbers of monobehaviours, such as the widgets in a typical mixed reality scene, the overhead of game objects would be significant. Would it be viable to use monobehaviours for most parts of MRTK, while processing updates on large collections of objects via ECS/DOTS? It seems like all of the HoloLens applications that I have developed have been GPU-bound so I haven't profiled at this level.

Can you explain how to do #2? That sounds really great. I have been doing Add To Scene and Configure and then the options I found were Copy & Customize (only clones one level) or Create new profiles (creates empty profile--you'd have to fill everything in).

Read-only settings that must be cloned before they can be edited. (Combined with the nesting, this requires you to clone multiple times, with different subsections and subsubsections.)

This absolutely needs to go. I'm 100% comfortable with profiles at this point and I still find myself frustrated by this limitation daily.

@ForrestTrepte You're correct that #3545 is related to some of the issues you're raising.

Put settings on regular old Unity game objects in the scene. Everything would understand how this works

If you open your config profile's Editor Settings - after cloning your read-only profile, natch 👍  - and check Enable Service Inspectors, MRTK will generate a set of game objects that mimic the kind of standalone objects we're all used to dealing with.
This doesn't change the way services actually work, nor does it change where config data is actually stored. So we should continue to explore some of the other options you mention. But it does provide a more familiar (and non-nested way) to view and interact with services / settings.

I wasn't a big fan of the Russian nesting dolls either.

Put settings on regular old Unity game objects in the scene. Everything would understand how this works

imho the way it's setup in the Project tab is essentially the same way. It's something you select in a folder hierarchy vs a scene hierarchy. Not much of a difference in workflow, just a different window you're selecting items in. That's why I don't agree with the Facades in any way. All of the services and systems don't exist in the scene, and don't require any sort of representation there.

Would it be viable to use monobehaviours for most parts of MRTK, while processing updates on large collections of objects via ECS/DOTS?

Yes, but then we'd loose out on that huge performance gain I mentioned earlier. Also Unity is moving most development to ECS/DOTS very soon, so it makes sense to go ahead and start nudging people that  way. We thought of the toolkit as a stepping stone to ECS/DOTS workflows, and should be easily compatible as we've removed a lot of the Monobehaviour dependencies already.

Can you explain how to do 2? That sounds really great. I have been doing Add To Scene and Configure and then the options I found were Copy & Customize (only clones top level) or Create new profiles (creates empty profile--you'd have to fill everything in).

@railboy, didn't you update the clone tool to facilitate this already?
I think the idea was that the default profiles were enough, and that the toolkit is already configured to meet 80% of most developers needs.
You should only have to clone a profile to meet a specific edge case. We envisioned that people wouldn't actually be editing the defaults too much unless they really wanted to get into customizing all the things.
Although there were other profiles, like the input actions we thought people would customize a lot per application, based on all the different actions a user can take it it. That's mainly why we choose to only clone what you need, and leave the rest alone.
I've noticed people tend to want to just jump in and customize all the things without really understanding what it does 😅 which I'm the same way. Best way to learn, imho, but can quickly lead to confusion. Part of why most of the inspectors are heavily documented with notes and tooltips.
I think idea 4 is the most viable, having auto cloned the default makes it easier to also reset if you make a mistake, but I think the only hurdle there is preventing the clone method from selecting the newly cloned profile. I think the only downside is that it'd create a ton of new files immediately and it'll trigger an asset import. So it'd be something that needed to be done when the user Configure...s the toolkit, so there's no noticeable delay.

@StephenHodgson Yes I did some work on the profile clone tool but it could still use some work.

I've noticed people tend to want to just jump in and customize all the things without really understanding what it does 😅 which I'm the same way. Best way to learn, imho, but can quickly lead to confusion. Part of why most of the inspectors are heavily documented with notes and tooltips.

Agreed, that's how I learn too, poking around and breaking things. I get the need for a safety net but kneecapping that natural instinct and all the potential learning along with it really seems like the nuclear option.  Then you can tweak whatever you want and roll back if it breaks.
All I know is the non-editable default profile just isn't working. For first-time users it's alienating and for regular users it's super obnoxious.

It wasn't supposed to be a safety net, per say. It was intended that the profiles would be the defaults for most people's use cases.
Every decision was intentional with a lot of thought behind it, and having the default profiles be locked down was a good idea as we wanted to ensure that the toolkit worked out of the box, like magic, and we didn't want people to edit them only to grab an update and get their edits stomped.

All I know is the non-editable default profile just isn't working.

Although now that I've updated my fork to use the upm packages, it's no longer needed to lock them down as the packages grey out/lock them down by default and upm also offers an easy way to make a copy of assets and prefabs into people's projects.
It's really not much of a difference in the workflow from what Unity is also doing with their packages.

All I know is the non-editable default profile just isn't working. For first-time users it's alienating and for regular users it's super obnoxious.

I think this statement is a bit dramatic, but automating this initial clone will go a long way to help ease the process.

@ForrestTrepte Just looping back to make it clear that we're hearing your feedback on this issue and on the setting discoverability issue in #4243. Keep posting this stuff, it's really valuable.

Completely agree with the identification of the source issues being identified here and have to say we do know.
But to explain slightly, you need to understand its history.  The first major challenge was to break the old chains and make it work, deliver a solution that could be defined by a core set of configuration and break the old prefab / Go style of maintaining the Core solution.  This doesn't relate to SDK / scene stuff, just the whole backend.
Additionally, we had the challenge to make it super easy to radically change the project at run-time, swapping abilities/capabilities to enable projects to work in a true Mixed Reality fashion.
However, this was all (and we're still there) in the "Making it work" phase.  Now what we need to work towards "Making it easier to use", a few ideas have been mentioned above and a few haven't so here's my current thinking based off talking to devs, feedback and notes:

one pattern is to replicate the new Unity preferences screen, having a standalone editor window for managing all configuration.   This is probably the ideal case but tricky to implement and make it dynamic.  In the new editor UI, this would effectively be a complete rewrite of configuration screens.

Another is a custom editor window, similar to the above but more editor focused.  has the benefit of being able to reuse a lot of the current inspectors.

Configuration asset navigator. Some devs dislike the idea of a single all master powerful config screen but do want a navigatable / breadcrumb approach when working with the individual configuration assets.  Taking what is there but aligning it to modern standards used in web apps.

One underlying thing surrounds the "defaults" and I feel this we should be able to change easily now.  Currently, we start with read-only defaults forcing you to clone to start configuring.  So maybe we should flip this so that we START with a copy of the defaults and then give an option to reset (copy) the defaults should we want to go back.  That gives an editable version straight away, keeping the comfort for being able to get back.  The clone / new options should still stay for flexibility with working with multiple configurations.
Thoughts.

One underlying thing surrounds the "defaults" and I feel this we should be able to change easily now. Currently, we start with read-only defaults forcing you to clone to start configuring. So maybe we should flip this so that we START with a copy of the defaults and then give an option to reset (copy) the defaults should we want to go back. That gives an editable version straight away, keeping the comfort for being able to get back. The clone / new options should still stay for flexibility with working with multiple configurations.

Yes, 💯 definitely this

@SimonDarksideJ I remember us having a conversation about making our own preferences window as well.
Imho that's really the key I think and being able to enable the breadcrumb navigation is going to be key here.

I agree. Starting with already-cloned setting would go a long way.

By the way, if we kept settings in prefabs we'd get the revert functionality for free. Unity's new prefab features would even allow you so see exach setting you have changed from the default and to revert changes individually. This works really great in MRTKv1.


[Request] Beautify for hugo template syntax.

VSCode might appreciate a  Hugo (Go HTML template) syntax beautifier. Still now, Hugo tags are treated as text nodes (pure text) in HTML format leads to its content always get indent backward. Something look like this:
Expectation:
{{ if "what-ever-cond-is" }}
	// A text node
{{ end }}

Reality:
{{ if "what-ever-cond-is" }}
// A text node
{{ end }}

Since we already have syntax highlighting for Hugo, maybe it is possible to do a beautifier for it?

We've been using this Prettier plugin for the last few years with Hugo. It's not perfect but it'll get you 85% of the way there:
https://github.com/NiklasPor/prettier-plugin-go-template


move gson dep to jackson

(Use jackson also for the map matching component instead of json.org)

Done.


fix: adding csv support for gcs to spanner template

@hhasija can you also update the readme?

Done


certificatefix

Replace MySQL with PostgreSQL.

@HamzaAqel
Thank you for your contribution. Would you take a moment to sign the Contributor License Agreement (CLA)? After the CLA is signed, someone can review your pull request.
Thanks!

@Court72  how I can sign this CLA , it is not clear.

Hi @HamzaAqel
The changes in this PR might not meet the threshold to require a signed CLA. Note that if you make additional changes or other edits are committed in this PR, you might be required to sign it at that time.
Thanks!

@mksuni - Can you review this?

Thanks for your contribution @HamzaAqel. However, this change has already been implemented in the live article, so I'll close this PR.


Circular-shift (rotate) operations for UInt

Adds static circular shift (rotation) operations rotateLeft and rotateRight for UInt.

Related issue:
#1135

Type of change: other enhancement

Impact: API addition (no impact on existing code)

Development Phase: implementation
Release Notes

Can one of the admins verify this patch?

ok to test

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 All committers have signed the CLA.

We want to get this in, but need to review to ensure that the width semantics are consistent.

The widths seem good, i.e., the result width should always be the same as the width of the input.

I agree with @chick that tests for dynamic shifts are missing.

Hello to all,
Is this PR frozen? I hope these features will be integrated as chisel3's standard libraries.
I'm currently trying to use rocket chip's implementation. I think they will also be happy with this PR.
https://github.com/chipsalliance/rocket-chip/blob/4276f17f989b99e18e0376494587fe00cd09079f/src/main/scala/util/package.scala#L167-L187

@nindanaoto Thank you for your interest in Chisel! Would you be interested in helping us with the missing unit test to get this merged?

Really sorry for forgetting about this PR and even missing the ping :(
I think I'd made some progress with the tests and should have them locally. I can clean up and push by tomorrow. I'm also OK if someone else wants to take over from hear.

@kammoh
I'm happy with your quick reply!
Since this PR seems to be nearly able to merge, if you can do the rest of the works, it would be the best.
@edwardcwang
If no one will do the job, I'll do this because I'm one of the people who want to use this functionality. But I think I should wait a while for @kammoh's update.

I was thinking upstream Barrel Shifter to provide a radix-configurable dynamic shifter, maybe this may help as well?

I was thinking upstream Barrel Shifter to provide a radix-configurable dynamic shifter, maybe this may help as well?

I think this is also a barrel-shifter, but at bit-level. From your experience with the Vec implementation, do have any thoughts on improving this PR? Do you happen to have a test for that implementation? (I wasn't able to find one on the repo)

Yes, this is a barrel implementation.
https://github.com/chipsalliance/chisel3/blob/dc2484acfc52af4a4d4e7aa0506b874399520d35/core/src/main/scala/chisel3/Bits.scala#L649-L652

do have any thoughts on improving this PR?

The reason I implementation my barrel rotation is because:

I need a Vec implementation.

Do you happen to have a test for that implementation?

That's my bad, I'll increase the priority of this branch here.

I added two simple (working) tests, one based on suggestion from @chick and another based on rotating "b001" and comparing against known good values. I'll also try to see if I can come up with better tests.
Also check for known widths when width is 0 or 1 should work. Of course only matters if the width is known at elaboration time.

Do you think the tests are good enough for a merge? @aswaterman @ekiwi @chick
Also what are your thought on the dontTouch I added to UIntOps.io? Other tests (as well as the rotate ops) were also being optimized in the generated Verilog.


Add SoftRAID 5.0.7

Thank you for the contribution. It needed some fixes, so they were made in 6a29a1f23eecd010243fb09924aeed86fb322f85. Your contribution is still included (and still credited to you), with the appropriate modifications. Please feel free to ask about any of the changes.

Thanks for making the required changes. I tried to use #{version} in the url and app stanzas, but when I tried to test I got errors about url not being a valid URL. Is it because I used single quotes instead of double quotes?

Is it because I used single quotes instead of double quotes?

Yes.


Add PyDict.update() and PyDict.update_if_missing()

Fix #2910
Note, I'd also be happy to remove the override_ argument from merge and perhaps rename it to update_missing or similar to give a cleaner API. LMK what you think.
Please consider adding the following to your pull request:

[x] an entry for this PR in newsfragments
[x] docs to all new functions and / or detail in the guide
[x] tests for all new or changed functions

Maybe it would be better to use an enum for this, like
pub enum Override{
    ReplaceSelf,
    ReplaceOther,
}```

This gets rid of that _ too 🤮

An enum instead of bool can help with documentation, so I'm fine with doing that. Not sure how it removes _ from the variable name?

If you'd like the underscore gone and to use an enum, my suggestion would be to call the parameter replace_existing and then have
enum ReplaceExisting {
    No,
    Yes,
}

Surely we just change the variable name to replace_existing, although I think it's less clear than the current solution which shadows the cpython c API.
I also think using an enum is significantly uglier than a bool - another import, an unexpected API, and it would make me think there should be more than 2 options.
We could use over_ride, but personally I think what's here fine.

Not sure how it removes _ from the variable name?

Uh yeah...not sure how I thought that

I also think using an enum is significantly uglier than a bool

My gut feeling is that this is one of those methods where people are going to mess up. I think I'd have to look up which overrides what half the time 😅 . So maybe splitting this up in multiple methods is a better idea.

So maybe splitting this up in multiple methods is a better idea.

Well in that case we can drop the case of merge(&self, other: &PyDict, true) since according to the C API docs, it has the same behaviour as update(other) (and presumably is slower???).
So we could then have:

fn update(&self, other: &PyDict) - unchanged
fn update_if_missing(&self, other: &PyDict) -> {merge(other, true)} - where existing values are not changed, somewhat similar to setdefault but for multiple values

The question then is what we call update_if_missing???
We could use update_if_missing, update_weak or just update_missing as I mentioned at the beginning.

So I looked in the CPython source and it turns out that PyDict_Merge(x, y, 1) is exactly equivalent to PyDict_Update(x, y): https://github.com/python/cpython/blob/4246fe977d850f8b78505c982f055d33d52ff339/Objects/dictobject.c#L2932
So it's correct that there are really only two cases here. update and update_if_missing seem reasonable to me.
Final observation is that these functions support arbitrary mappings, not just Dict. So I suggest we go for:
fn update(&self, other: &PyMapping) -> PyResult<()>
fn update_if_missing(&self, other: &PyMapping) -> PyResult<()>

If you really want &PyDict arguments, for completeness we'd need:
fn update(&self, other: &PyDict) -> PyResult<()>
fn update_if_missing(&self, other: &PyDict) -> PyResult<()>
fn update_from_mapping(&self, other: &PyMapping) -> PyResult<()>
fn update_if_missing_from_mapping(&self, other: &PyMapping) -> PyResult<()>

But there would be no functional difference, and PyDict::as_mapping is a zero-cost conversion.

Updated to update and update_if_missing
Switched to PyMapping
updated docs

bors r+

Awesome, thank you.


missleading doc in gui_curve_edit

Old comment, EvalGuiCurve doesn't return normalized y anymore.

@smallcluster thanks for the review


SBT refactor 2 (SL: 2016.02.08)

Refactor nounou so that it does not need jgit... the jgit library seems to be causing a lot of dependencies and active Git repo access is not necessary within daily use of the code (indeed, it would fail for *.jar files distributed outside the repo).
Instead of using jgit to actively detect the git repository hash, use the SBT git plugin to include it within the SBT version name. (The SBT version name is inserted into the *.jar MANIFEST, which can be accessed from the application using reflection like so):
val p = getClass.getPackage
val name = p.getImplementationTitle
val version = p.getImplementationVersion

An alternative would to dump the hash in a specific text file in the project tree.

@ktakagaki
As far as I understand, you can't really use sbt-git plugin from the scala code, and it also won't be available in the jar file.
I can use the "useJGit" option, but that would be exactly the same as just dependeing on JGit as before.
If git will never be used from outside the .jar file as you write in the NNGit.scala notes, I could rewrite the scala code into sbt code and place it in /project/gitversioning.sbt or something.
Then as long as you have sbt installed you can always make sure that stuff like version numbering is combined with git features etc.
Do we want to go down this path, or is depending on jgit fine? Now that it's a managed dependency from a maven repository JGit no longer causes any dependency issues

@ktakagaki
If the "git sha1 commit hash" to be dumped out to a text file will always be used on a system where git is available. Then I think the easiest, "no external dependency" solution to use would be to write some scala code that reads the root .git directory and identifies what the last git sha1 hash was.
Alternatively, we could write a costum piece of code that calculates the sha1-hash of the root folder similar to how git would do it, so theoretically if you then "git commit" in the folder without changing anything, would get the same sha1 hash as the code calculated. Of course requiring the sha1hash.txt file to be outputted outside of the root project folder

Now, I understand. Let's do it that way then. The only thing is to make sure how stable the ".git" format or the logfile format is.

Goal refinement:
Any time SBT compile/make is run, execute task to read .git/?log and dump SHA hash into specific text file in resources.
On the end-user side, this resource will be read to provide reproducibility output like this:

P.S. Not necessary, but it would be nice if we could have the URL of the repository in question

@slentzen
I think now that the nounou packages created by xerial.sbt-pack (using pack command) now include git information in Manifest.mf (I used sbt-git-stamp plugin.
All that remains now is to read the manifest using regular java resource mechanisms.
Could you try to simplify nounou.util.NNGit.scala?
You should be able to cut out all the jgit dependencies, jgit initialization, json serialization (leave gson dependency in, because it is used elsewhere in the package).
Essentially, all  nounou.util.NNGit needs to provide are
  var head: String = "Head not initialized"
//  var headShort: String = "Short head not initialized"
  var branch: String = "Branch not initialized"
  var remotes: Array[String] = Array("Remotes not initialized")

I don't think var remotes is particularly easy to retrieve, so we can ignore it.
var gitDirectory is now irrelevant.
Contact for questions.

As long as git is installed on the operating system and has been added to the PATH variable, it should be fairly easy to use git from SBT with the following code:
val gitHeadCommitSha = taskKey[String]("Determines the current git commit SHA")

val makeVersionProperties = taskKey[Seq[File]]("Creates a version.properties file we can find at runtime.")

gitHeadCommitSha in ThisBuild := Process("git rev-parse HEAD").lines.head

makeVersionProperties := {
      val propFile = (resourceManaged in Compile).value / "version.properties"
      val content = "version=%s" format (gitHeadCommitSha.value)
      IO.write(propFile, content)
      Seq(propFile)

Would you be okay with adding this, or is the current solution working just fine?
I will get started on the tasks you mentioned earlier such as simplifying nounou.util.NNGit.scala
@ktakagaki

That does sound cleaner more elegant than sbt-git-stamp.
Please see if it's possible.
That way, I guess we can also add the repo information too...
Once it's done, it might be a good blog article or something for people who want to do this but don't know much SBT, and you can mention other options such as sbt-git-stamp etc. too...
I gather that this Process("") is a command line processor? Is it standard SBT? Sorry for my ignorance on this.
Also, how would we run this (i.e. make the file creation part of the standard compile task?)


Proptypes has been moved to a separate package - Expo 19

Using the example on expo 19 I get this warning;

I made a pull request addressing this issue https://github.com/EvanBacon/expo-three-orbit-controls/pull/2

Thanks @Kif11 <333


Disregard interactive props with null values

I found that elements that have nulled out handler values are getting flagged by no-static-element-interactions and no-noninteractive-element-interactions.
These rules shouldn't trigger on elements that do not have interaction handling.

Coverage increased (+0.001%) to 99.469% when pulling 7cd4efd43a285d71ca1546decad4f353c88a4ed9 on jessebeach:disregard-null-values into 20cda7123158cc405b8a98f4f03ff221bf8df498 on evcohen:master.

This seems like it'd be a useful helper in jsx-ast-utils

I had this thought as well. But then I couldn't think of where else it'd be used in this plugin. If I find a third use for the pattern, I'll move it to jsx-ast-utils.


Can we read message from bot API. like (messages.getMessages)

Question

Can we get the message from telegram bot means i want to read the message which is sent from group.
is it possible in bot api.
I see telegram api have these functions https://core.telegram.org/method/messages.getMessages.
the same function available in telegram.
Thanks in advance

This library interfaces with the Bot API. Check out the docs, particularly, API Reference.

Close?

Oh okay, so from the Bot API can we read the message from particular CHAT or GROUP.
Is there any options like --> https://github.com/yagop/node-telegram-bot-api/blob/release/doc/api.md#TelegramBot+getChat.
If not can you please suggest any Telegram API with these functionality. I have searched a lot but no luck.
Thanks in advance.

The official Bot API does not offer such a method i.e. reading messages from a particular chat. You only receive messages as they're sent by users.
PS: Check out the available methods for more information.

https://core.telegram.org/method/messages.getMessages

Bots can use this method

@yangirekun Has anything changed since then?
Is there a way for
Telegram bots to receive a list of channel messages?

@yangirekun Has anything changed since then? Is there a way for Telegram bots to receive a list of channel messages?

bump

bump


Add policy_routing job

Add a job to configure policy routing for network interfaces. The job implemented simple policy routing described in http://blog.scottlowe.org/2013/05/29/a-quick-introduction-to-linux-policy-routing/.
The purpose of the job is mainly for setting up outbound route for the VM which has multiple network interfaces.

Hi @dpb587-pivotal,
I moved the PR from os-conf-release to this repo. This job is a simple implementation of policy routing, it is not easy to just merge it to the existing jobs gateway or routes which is quite different from policy routing, so I would like to create a new job for it.

Can anyone here help to review and merge this PR?
@dpb587-pivotal, @cppforlife


Create thumbprint-global-css package

It will contain:

Reset
<body> styles
<a> styles

One thing I'm unsure about is to distribute the font-face. Would be good to distribute here, but it requires setting the $thumbprint-font-url variable: https://github.com/thumbtack/thumbprint/blob/master/packages/tp-ui-core-font-face/_index.scss#L6
Is it better to distribute this as a CSS-only package that we can host on a CDN? Or should we ship it as a SCSS package that requires the variable as a config step?

We can additionally create this as a React component called <ThumbprintGlobal />. It would be used like this:
<ThumbprintGlobal fontUrl="https://example.com/">
  <header />
  <main>
    <Button />
  </main>
</ThumbprintGlobal>

fontUrl would be a required step to get Mark loaded. Button could even throw a console error if it is not used within a ThumbprintGlobal component.
Edit: An issue with this approach is that we need the reset to load first. I'm not sure that can be guaranteed if it's getting imported by ThumbprintGlobal.

cc: @tomgenoni

@tomgenoni — Want to close this one and make follow up tasks?
The ones I can think of are to delete the old packages and document the new one.


Boss Zombies aren't synced

Describe the bug
Boss Zombies aren't synched between players, the creator of the zombie is the only one that can see the glow, items are not dropped when it's killed
To Reproduce
N/A
Expected behavior
Boss Zombie should be synced across players and should show up for everyone as red.
Screenshots/Videos
N/A
Logs
N/A
Additional context
N/A

Took a gander at the code, my suspicion would be that the Decor does not get synced for some reason, here's the piece of code that sets the decor, more investigation is required
https://github.com/Bluethefurry/RottenV/blob/master/client/spawners/zombiespawner.lua#L535


set typebuf_was_filled to update screen immediately

This patch fixes #1924

Yasuhiro Matsumoto wrote:

This patch fixes #1924

But it breaks Unix.  I think we need a specific function to check for
messages, even when input is pending.  I'll add that for Unix and Win32
console.  Not sure how to do this for win32 GUI.
--
ARTHUR:        I command you as King of the Britons to stand aside!
BLACK KNIGHT:  I move for no man.
The Quest for the Holy Grail (Monty Python)
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///


[FEAT]: Add support for Angular Material custom package.json exports

Which scope/s are relevant/related to the feature request?
vite-plugin-angular
Information
Angular Material uses custom sass and style properties in the package.json exports. When using the imports from Angular Material themes with Vite, it throws an error as it cannot resolve them. This can be fixed by adding sass and style to the resolve.conditions in the Vite config.
We can support this out of the box by adding it to the plugin, where the config will get merged into the provided config.
import { defineConfig } from 'vite';
import angular from '@analogjs/vite-plugin-angular';

// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {
  return {
    plugins: [
      angular({
        inlineStylesExtension: 'scss',
      }),
    ],
    resolve: {
      conditions: ['sass', 'style'], // <-- add to vite plugin
      mainFields: ['module'],
    },
  };
});

Reference https://github.com/yharaskrik/analog-nx-15/commit/c76f4d7b91f0260f8f7630d41655ad033f1faf4f#diff-28948f0a986cd471c15c0d8c8d3a3ae39a1b7f8b054af7deb4032b01823dd42e
Describe any alternatives/workarounds you're currently using
No response
I would be willing to submit a PR to fix this issue

[ ] Yes
[ ] No

Maybe this fix is related? https://github.com/angular/angular-cli/commit/0662a2e9eb116915718d512876bdacab929a6ed9


Better handling empty inputs + outputs

mesg.yml

name: test-service

events:
  foo:

tasks:
  foo:

➜  core git:(benchmark/service) ✗ ./dev-cli service validate ./service
⨯ File 'mesg.yml' is not valid. See documentation: https://docs.mesg.com/guide/service/service-file.html
	* Tasks[foo] is a required field
	* Events[foo] is a required field

The information is not clear. Also there was an issue about handle empty data but I can't find it right now so I recreated this one.

extra with validation changes service doesn't have an option to return nothing

name: test-service

tasks:
  foo:
    outputs:
      data:

⨯ File 'mesg.yml' is not valid. See documentation: https://docs.mesg.com/guide/service/service-file.html
	* Tasks[foo].Outputs[data] is a required field


Travis build failing

Looks like flatpak changed and now it requires interaction before installing deps?

Fixed by https://github.com/Stanford-Mobisocial-IoT-Lab/almond-gnome/commit/14cc1286ac78ee2ed538dbafed694d67d4ac0d77


runtime:ftplugin: let &keywordprg use :term

See https://github.com/neovim/neovim/pull/30409

Not sure if I like the idea of nvim specific checks in vim runtime files.
On the other hand it is already in some of runtime files, including netrw: https://github.com/vim/vim/blob/4298c5f472a05486d6e26988cf10f4d04c80afd2/runtime/plugin/netrwPlugin.vim#L159
it is also in ruby and rust:

https://github.com/vim/vim/blob/4298c5f472a05486d6e26988cf10f4d04c80afd2/runtime/autoload/rust.vim#L533
https://github.com/vim/vim/blob/4298c5f472a05486d6e26988cf10f4d04c80afd2/runtime/autoload/rubycomplete.vim#L629

I understand. To ease maintenance, I  removed the first variant using :!less which does not work on Neovim, and try :!term less, assuming that most Vim now supply a :term command.
This term command output incompatibility is a pain point

Thanks. Again it would be nicer if the zsh filetype went directly via my upstream repo. But I have fixed that now.

Yes, I thought of it but wasn't sure there's a preference in order; would've added a PR for your repo, but glad to hear that it's already sorted out

yes, I want to make it easy for users to use runtime files in both projects and if feasible, I think it is beneficial for both projects to keep the logic more or less in one runtime file. But if upstream runtime file maintainers have a different opinion, then it is ultimatively their decision.


add geekuninstaller

A nice uninstaller. Not command-line, but small and smart.

Sorry, strange behavior with VS Code ...

Nice 👍
Can you change it to the .7z file, it's smaller 😄


PersistentObject issue after upgrading to v0.1.0-SNAPSHOT

After upgrading an existing SHOGun2 project to current master (v0.1.0-SNAPSHOT) I am running into the following issue:
While starting my servlet container (Tomcat v7 in my case) the following exception is thrown while SHOGun tries to init the database content:
org.springframework.beans.factory.BeanCreationException: Error creating bean with name
'contentInitializer': Injection of resource dependencies failed; nested exception is
org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type
[de.terrestris.shogun2.model.PersistentObject] found for dependency
[collection of de.terrestris.shogun2.model.PersistentObject]: expected at least 1 bean which
qualifies as autowire candidate for this dependency. Dependency annotations:
{@javax.annotation.Resource(shareable=true, lookup=, name=, description=,
authenticationType=CONTAINER, type=class java.lang.Object, mappedName=),
@org.springframework.beans.factory.annotation.Qualifier(value=objectsToCreate)}

When I get it right the problem is to inject the 'objectsToCreate' (private List<PersistentObject> objectsToCreate;) in de.terrestris.shogun2.init.ContentInitializer.
I  would be thankful for any hint solving this.

We'll be looking into this shortly. Stay tuned.

I have a first hook, what the problem is:
My {ProjectArtifactId}-context-initialize-beans.xml is out of sync with the data structure expected by de.terrestris.shogun2.init.ContentInitializer.  This one has been created by the SHOGun2-Archetype a while ago and looks a bit different than the one in the current archetype https://github.com/terrestris/shogun2/blob/master/src/shogun2-webapp-archetype/src/main/resources/archetype-resources/src/main/resources/META-INF/spring/artifactId-context-initialize-beans.xml
I try to update my {ProjectArtifactId}-context-initialize-beans.xml and will report feedback if this solves the problem.

Okay finally I got it running again. I had to do the following steps:

Adapt the existing {ProjectArtifactId}-context-initialize-beans.xml file (under src/main/resources/META-INF/spring/) according to the new structure as it is defined in the archetype
Adapt the existing {ProjectArtifactId}-context.xml file (under src/main/resources/META-INF/spring/) according to the new structure as it is defined in the archetype
Add the missing geoServerNameSpaces.properties file to src/main/resources/META-INF/, like the one in the archetype

Do you think you can come up with a PR that documents this here: https://github.com/terrestris/shogun2/blob/master/RELEASE-NOTES.md ?
That'd be so nice :cookie:

Sure! I opened a PR, see #161.


Create 17.json

yay !

Hi! I think you're at the mozfest session? :star: You'll need to submit this pull request against jlord's repository – https://github.com/jlord/bingo-board, so I'm going to close this out!
Good luck! 🍀


Onchain Summer Challenge

Project ready ✅
Going live during EthCC on July 8th.
DM us on Farcaster for preview link access.


Merge nmirror to master

@dotnet-bot test OSX Debug and CoreCLR tests please

@cshung Are you set up to have a look at the CoreRT build breaks caused by your change? There's independent breakage in both Unix builds and Windows builds.

I am on it.

This passed SimonCI locally on my Mac so just merging.

I think this resulting in
208:2>System\Diagnostics\Tracing\EventCounter.cs(239,26): error CS0436: The type 'EventCounter' in 'C:\git\coreclr\_\fx\src\System.Diagnostics.Tracing\src\System\Diagnostics\Tracing\EventCounter.cs' conflicts with the imported type 'EventCounter' in 'System.Private.CoreLib, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=7cec85d7bea7798e'. Using the type defined in 'C:\git\coreclr\_\fx\src\System.Diagnostics.Tracing\src\System\Diagnostics\Tracing\EventCounter.cs'. [C:\git\coreclr\_\fx\src\System.Diagnostics.Tracing\src\System.Diagnostics.Tracing.csproj]

Is there a corresponding dotnet/corefx PR ready to resolve this?

@brianrob see last comment.

I am going to submit one.

@jkotas Thanks.  Looks like it just hit: https://github.com/dotnet/corefx/pull/18167

@RussKeldorph, is this failing in coreclr, corefx or corert?  I'm not 100% sure from the message above.

@brianrob This is latest corefx tests with latest coreclr.  Sounds like @jkotas has it under control.

Ok, thank you.  @jkotas if you need me to handle this, just let me know and I'll jump in.


Remove unneeded references to execDriver

This includes:

updating the docs
removing dangling variables

Signed-off-by: Kenfe-Mickael Laventure<EMAIL_ADDRESS>--
Trying to make master docs less confusing as they still refer to execdriver atm.

followup to 20662? @thaJeztah?

Also a bunch of noise in terms of the end of line spaces being removed. I'm fine with it, but it makes it more difficult to review.

Yes, sorry for the whitespace changes. I wish github had an option to hide those like with git diff -w

Actually, it has; add ?w=1 to the url; https://github.com/docker/docker/pull/21367/files?w=1

beat me to it. I remembered after @mlaventure mentioned diff.

LGTM

LGTM


Enable python 3.8

Hi @gi0baro,
In order to add emmett (aka weppy) in https://github.com/the-benchmarker/web-frameworks, it needs to be runnable on python 3.8
:information_source: python 3.8 is the current stable :information_source:
This PR :

[x] Use html.escape instead of cgi.escape, since this was removed

@see https://docs.python.org/3/whatsnew/3.8.html#api-and-feature-removals

[x] Test code base against python 3.8
[x] Add python 3.8 classifier
[x] Specify uvloop to be at minimum 0.14, 0.13 is not suitable for python 3.8
[x] Specify digestmod, since required on python 3.8

@see https://docs.python.org/3/library/hmac.html#hmac.new
Regards,

Closes #251

@waghanza thank you!


[WEB] NoSuchMethodError: The method 'toFilePath' was called on null.

Don't work with 1.15.17 to 1.16.1
It's been experimented.
Downloading Web SDK... 19.0s
Launching lib/main.dart on Chrome in debug mode...
ERROR - 2020-03-20 12:31:23.634307
GET /dwds/src/injected/client.js
Error thrown by handler.
NoSuchMethodError: The method 'toFilePath' was called on null.
Receiver: null
Tried calling: toFilePath()
dart:core Object.noSuchMethod
createInjectedHandler.. (package:dwds/src/handlers/injected_handler.dart:35:39)
flutter doctor -v
Waiting for another flutter command to release the startup lock...
[✓] Flutter (Channel dev, v1.16.1, on Linux, locale en_US.UTF-8)
• Flutter version 1.16.1 at /home/attia/Porgram/flutter
• Framework revision e6b0f5f (33 hours ago), 2020-03-18 21:56:02 -0400
• Engine revision 216c420a2c
• Dart version 2.8.0 (build 2.8.0-dev.15.0 96cf889e6b)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
• Android SDK at /home/attia/Android/Sdk
• Android NDK location not configured (optional; useful for native profiling
support)
• Platform android-29, build-tools 29.0.3
• Java binary at: /home/attia/Porgram/android-studio/jre/bin/java
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6222593)
• All Android licenses accepted.
[✓] Chrome - develop for the web
• Chrome at google-chrome
[✓] Android Studio (version 4.0)
• Android Studio at /home/attia/Porgram/android-studio
• Flutter plugin version 44.0.3
• Dart plugin version 193.6494.35
• Java version OpenJDK Runtime Environment (build
1.8.0_242-release-1644-b3-6222593)
[✓] VS Code (version 1.43.1)
• VS Code at /usr/share/code
• Flutter extension version 3.8.1
[✓] Connected device (2 available)
• Chrome • chrome • web-javascript • Google Chrome 80.0.3987.149
• Web Server • web-server • web-javascript • Flutter Tools

duplicate of #52914


Add a type for natural transformations

The servant-server package is defining a data type to hold a natural transformation (https://hackage.haskell.org/package/servant-server-<IP_ADDRESS>/docs/Servant-Server-Internal-Enter.html).
I claim that such a type needs a more appropriate home.
I was wondering if mmorph could be a good place.

@np have you seen natural-transformation?

Yeah, I think natural-transformation is a natural home for this and I believe the (:~>) type from that package does what you want


EVS Port1 42/1/CFE_ES 48: ES_ProcControlReq: Unknown State ( 1 ) Application IMU.

Hi,
I'm working on an IMU application that connects and logs IMU data.
I have a function IMU_InitSensor()  that initializes the sensor and returns CFE_SUCCESS if initialization succeeds and -1 otherwise. if the return value is -1, the App will exit.
I'm trying to run the app when the sensor is physically disconnected to make sure I get the correct behavior, but I'm getting this error message:
`
1980-012-14:03:21.76253 Application IMU called CFE_ES_ExitApp
EVS Port1 42/1/CFE_ES 48: ES_ProcControlReq: Unknown State ( 1 ) Application IMU.
`
Here is my AppMain:
``
void IMU_AppMain()
{
int32 iStatus = CFE_SUCCESS;
uint32 taskId = 0;
`
/* Start Performance Log entry */
//CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID);
/* Perform application initializations */
if (IMU_InitApp() != CFE_SUCCESS)
{
    g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
    goto IMU_AppMain_Exit_Tag;
}
else if (IMU_InitSensor() != CFE_SUCCESS)//returns 0 on success and -1  #otherwise
{
    g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
    goto IMU_AppMain_Exit_Tag;
}
else {
    /* Do not perform performance monitoring on startup sync */
    CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);
    CFE_ES_WaitForStartupSync(IMU_TIMEOUT_MSEC);
    CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID);
}

iStatus = CFE_ES_CreateChildTask(&taskId,
                                 "IMU Child Task",
                                 IMU_ChildTask,
                                 IMU_CHILD_TASK_STACK_PTR,
                                 IMU_CHILD_TASK_STACK_SIZE,
                                 IMU_CHILD_TASK_PRIO,
                                 0);
if(iStatus != CFE_SUCCESS)
{
    g_IMU_AppData.uiRunStatus = CFE_ES_APP_ERROR;
    CFE_ES_WriteToSysLog("IMU - Failed to create child task\n");
    goto IMU_AppMain_Exit_Tag;

}

/* Application main loop */
while (CFE_ES_RunLoop(&g_IMU_AppData.uiRunStatus) == TRUE)
{
    CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);

    iStatus = IMU_RcvMsg(CFE_SB_POLL);

}

/* Stop Performance Log entry */
CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);

IMU_AppMain_Exit_Tag:     /* Exit the application */     CFE_ES_WriteToSysLog("IMU - Exiting App...\n");     CFE_ES_ExitApp(g_IMU_AppData.uiRunStatus); }
Any help? Thanks!

Do you set g_IMU_AppData.uiRunStatus = CFE_ES_APP_RUN before you enter the
main loop?    This needs to be done. For an example see  QQ_AppInit() in
the cFE app's developer's guide this is done.
Hope this helps - Dave
On Sun, Feb 14, 2021 at 5:54 PM moafandi0<EMAIL_ADDRESS>wrote:

Hi,
I'm working on an IMU application that connects and logs IMU data.
I have a function IMU_InitSensor() that initializes the sensor and
returns CFE_SUCCESS if initialization succeeds and -1 otherwise. if the
return value is -1, the App will exit.
I'm trying to run the app when the sensor is physically disconnected to
make sure I get the correct behavior, but I'm getting this error message:
`
1980-012-14:03:21.76253 Application IMU called CFE_ES_ExitApp
EVS Port1 42/1/CFE_ES 48: ES_ProcControlReq: Unknown State ( 1 )
Application IMU.
`
Here is my AppMain:
``
void IMU_AppMain()
{
int32 iStatus = CFE_SUCCESS;
uint32 taskId = 0;
`
/* Start Performance Log entry */
//CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID);
/* Perform application initializations /
if (IMU_InitApp() != CFE_SUCCESS)
{
g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
goto IMU_AppMain_Exit_Tag;
}
else if (IMU_InitSensor() != CFE_SUCCESS)//returns 0 on success and -1  #otherwise
{
g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
goto IMU_AppMain_Exit_Tag;
}
else {
/ Do not perform performance monitoring on startup sync */
CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);
CFE_ES_WaitForStartupSync(IMU_TIMEOUT_MSEC);
CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID);
}
iStatus = CFE_ES_CreateChildTask(&taskId,
"IMU Child Task",
IMU_ChildTask,
IMU_CHILD_TASK_STACK_PTR,
IMU_CHILD_TASK_STACK_SIZE,
IMU_CHILD_TASK_PRIO,
0);
if(iStatus != CFE_SUCCESS)
{
g_IMU_AppData.uiRunStatus = CFE_ES_APP_ERROR;
CFE_ES_WriteToSysLog("IMU - Failed to create child task\n");
goto IMU_AppMain_Exit_Tag;
}
/* Application main loop */
while (CFE_ES_RunLoop(&g_IMU_AppData.uiRunStatus) == TRUE)
{
CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);
iStatus = IMU_RcvMsg(CFE_SB_POLL);

}
/* Stop Performance Log entry */
CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);
IMU_AppMain_Exit_Tag: /* Exit the application */ CFE_ES_WriteToSysLog("IMU

Exiting App...\n"); CFE_ES_ExitApp(g_IMU_AppData.uiRunStatus); }

Any help? Thanks!
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/nasa/cFS/issues/189, or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAMGKCENUY2T5SPNTN7XRMTS7BIDRANCNFSM4XTV7EQQ
.

Is it just the single "unknown state" log message that is the issue here?
I noticed this extra log message when testing another unrelated item, it was just an artifact of the app exiting itself and not really indicative of a problem.  Perhaps it should be cleaned up not to say "unknown state" which sounds bad but its really not.
Does the app proceed to exit and the system work normally thereafter?  (it should).

Do you set g_IMU_AppData.uiRunStatus = CFE_ES_APP_RUN before you enter the main loop? This needs to be done. For an example see QQ_AppInit() in the cFE app's developer's guide this is done. Hope this helps - Dave
…
On Sun, Feb 14, 2021 at 5:54 PM moafandi0 @.**> wrote: Hi, I'm working on an IMU application that connects and logs IMU data. I have a function IMU_InitSensor() that initializes the sensor and returns CFE_SUCCESS if initialization succeeds and -1 otherwise. if the return value is -1, the App will exit. I'm trying to run the app when the sensor is physically disconnected to make sure I get the correct behavior, but I'm getting this error message: 1980-012-14:03:21.76253 Application IMU called CFE_ES_ExitApp EVS Port1 42/1/CFE_ES 48: ES_ProcControlReq: Unknown State ( 1 ) Application IMU. Here is my AppMain: `` void IMU_AppMain() { int32 iStatus = CFE_SUCCESS; uint32 taskId = 0; ` / Start Performance Log entry / //CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID); / Perform application initializations / if (IMU_InitApp() != CFE_SUCCESS) { g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT; goto IMU_AppMain_Exit_Tag; } else if (IMU_InitSensor() != CFE_SUCCESS)//returns 0 on success and -1 #otherwise { g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT; goto IMU_AppMain_Exit_Tag; } else { / Do not perform performance monitoring on startup sync / CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID); CFE_ES_WaitForStartupSync(IMU_TIMEOUT_MSEC); CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID); } iStatus = CFE_ES_CreateChildTask(&taskId, "IMU Child Task", IMU_ChildTask, IMU_CHILD_TASK_STACK_PTR, IMU_CHILD_TASK_STACK_SIZE, IMU_CHILD_TASK_PRIO, 0); if(iStatus != CFE_SUCCESS) { g_IMU_AppData.uiRunStatus = CFE_ES_APP_ERROR; CFE_ES_WriteToSysLog("IMU - Failed to create child task\n"); goto IMU_AppMain_Exit_Tag; } / Application main loop / while (CFE_ES_RunLoop(&g_IMU_AppData.uiRunStatus) == TRUE) { CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID); iStatus = IMU_RcvMsg(CFE_SB_POLL); } / Stop Performance Log entry / CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID); IMU_AppMain_Exit_Tag: / Exit the application */ CFE_ES_WriteToSysLog("IMU - Exiting App...\n"); CFE_ES_ExitApp(g_IMU_AppData.uiRunStatus); } Any help? Thanks! — You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub <#189>, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAMGKCENUY2T5SPNTN7XRMTS7BIDRANCNFSM4XTV7EQQ .

Thanks for your reply!
This is the first thing done inside IMU_InitApp()

Is it just the single "unknown state" log message that is the issue here?
I noticed this extra log message when testing another unrelated item, it was just an artifact of the app exiting itself and not really indicative of a problem. Perhaps it should be cleaned up not to say "unknown state" which sounds bad but its really not.
Does the app proceed to exit and the system work normally thereafter? (it should).

The unknown state message is printed to the terminal every 1 second but the system works normally. However, I don't think the app is exiting because in other cases, when I exit the app I get the following:
1980-012-14:04:20.05614 Application IMU called CFE_ES_ExitApp EVS Port1 42/1/CFE_ES 13: Exit Application IMU Completed.
I don't get the "Exit application completed" here in this case.

You didn't mention what version of CFE you are running...  is this the "main" branch or a tagged release?
There was an old bug, see nasa/cFE#89.

You didn't mention what version of CFE you are running... is this the "main" branch or a tagged release?
There was an old bug, see nasa/cFE#89.

I'm using version 6.5.0 that I got from sourcefourge and it looks like this is exactly the issue I'm having.
As I understood from the link you sent, I tried to set the runStatus to CFE_ES_SYS_DELETE like this:
else if (IMU_InitSensor() != CFE_SUCCESS)//returns 0 on success and -1  #otherwise
{
    g_IMU_AppData.uiRunStatus = CFE_ES_SYS_DELETE;
    goto IMU_AppMain_Exit_Tag;
}

But the issue still persists. I'm sure there's something else here I missed.

I'm sure there's something else here I missed.

Probably not, actually....  There is just a bug in that version that ultimately means apps cannot self-exit -- they get stuck in a loop and never cleans up.  It was fixed a while back (see the ticket) but will not be back-ported to 6.5.0 unless someone in the community chooses to fix it in that version.
Unless there is a good reason you need to stick to an old version, for any new work I would recommend using a more current cFE version.  Almost all of the 1000+ reports in the CFE repo are probably other issues you may run into.

In the end of the child task that I spawn, I set g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT and then exit the child task. In that case, the app exits normally. Is it because the app received this commands while it is in its processing loop?
I will see if I can update it but I wanna try finding a workaround first.

Here's a workaround, Instead of using a goto statement, I let the the app continue its normal path until it gets to the exit app, and I enclosed the createChildTask function in an if statement to avoid creating it if SensorInit() fails and now I don't get the error msg and the app exits normally. See code below.
Thanks for your help everyone!
    if (IMU_InitApp() != CFE_SUCCESS)
    {
        g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
        //goto IMU_AppMain_Exit_Tag;
    }
    else if (IMU_InitSensor() != CFE_SUCCESS)
    {
        g_IMU_AppData.uiRunStatus = CFE_ES_APP_EXIT;
        //goto IMU_AppMain_Exit_Tag;
    }
    else {
        /* Do not perform performance monitoring on startup sync */
        CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);
        CFE_ES_WaitForStartupSync(IMU_TIMEOUT_MSEC);
        CFE_ES_PerfLogEntry(IMU_MAIN_TASK_PERF_ID);
    }

    if(g_IMU_AppData.uiRunStatus == CFE_ES_APP_RUN)
    {
        iStatus = CFE_ES_CreateChildTask(&taskId,
                                     "IMU Child Task",
                                     IMU_ChildTask,
                                     IMU_CHILD_TASK_STACK_PTR,
                                     IMU_CHILD_TASK_STACK_SIZE,
                                     IMU_CHILD_TASK_PRIO,
                                     0);
        if(iStatus != CFE_SUCCESS)
        {
        g_IMU_AppData.uiRunStatus = CFE_ES_APP_ERROR;
        CFE_ES_WriteToSysLog("IMU - Failed to create child task\n");
        //goto IMU_AppMain_Exit_Tag;

        }

    }

    /* Application main loop */
    while (CFE_ES_RunLoop(&g_IMU_AppData.uiRunStatus) == TRUE)
    {
        CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);

        iStatus = IMU_RcvMsg(CFE_SB_POLL);

    }

    /* Stop Performance Log entry */
    CFE_ES_PerfLogExit(IMU_MAIN_TASK_PERF_ID);

IMU_AppMain_Exit_Tag:
    /* Exit the application */
    CFE_ES_WriteToSysLog("IMU - Exiting App...\n");
    CFE_ES_ExitApp(g_IMU_AppData.uiRunStatus);
}


Allow Type (& Source) to be set by variables

The type for aws_codebuild_project is hardcoded to CODEPIPELINE - allowing this to be set by variables, would allow the module to be used for GitHub sources.
https://github.com/cloudposse/terraform-aws-codebuild/blob/4767ce77c1b324f71d0cc2bc585a49e90c4d2562/main.tf#L208
Happy to raise a PR if this would fit with your vision for the module.

@atkinchris thank for reaching out! Sounds like a reasonable request. We'll happily review your PR, if you can open one up. Also, join our slack team! https://slack.cloudposse.com if you're interested in connecting with the rest of our community. =)

Thanks @osterman - I've raised a PR here: https://github.com/cloudposse/terraform-aws-codebuild/pull/22

Thanks @atkinchris! We're grateful for your contributions.


Add Ability to Insert Existing Documents Into Files

My initial thought was to have small chunks of markdown stored in files that could be injected into an existing doc. I still like this idea but it may involve parsing. A shortcut would be to let people input raw markdown and just not check it for them. Their risk.

This would help with fleshing out the template idea since we could create docs that could be injected at any time.

The Raw block should address this. The user would be responsible for reading their own files though.


Error checkpointing model after training for a while on TPU v3-32

Provide as much information as possible. At least, this should include a description of your issue and steps to reproduce the problem. If possible also provide a summary of what steps or workarounds you have already tried.
System information

TPU Version: tpu-vm-base
TPU model: v3-32

Problem you have encountered:
using flax.checkpoints.save_checkpoint with keep=6 I save a checkpoint every 10,000 steps, which works fine for the first 6 checkpoints, but then seems to throw an error when removing the old checkpoint. Not why there is tcmalloc: large alloc
Running locally on GPU the checkpointing works as expected
Logs, error messages, etc:
...

Steps to reproduce:
Repository is currently private, but here's the checkpointing code
  if (step > 0) and (step % checkpoint_frequency == 0):
      dataset_manager.save(step)  # save dataset state in each process
      # save train state in process 0
      checkpoints.save_checkpoint_multiprocess(
          f'{working_dir}/checkpoints/train_state',
          unreplicate(train_state), step, keep=keep_checkpoints)

This should be fixed by https://github.com/google/flax/pull/2518, which was not released yet. We probably should release another round...
Would you like to try installing Flax from head and see if this problem goes away? Just to make sure the PR solves your issue.

Sure! I'll give it a try.


fix read_callback only_once logic

Description
The logic missed the point that if a ReadCallback does NOT match, then it shouldn't logged as an already matched case.
The fix does not interfere the behavior except now it doesn't log unnecessarily for non-matched cases.
Type of change
Please delete options that are not relevant.

[X] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Re-wrote the relevant test case. This part was more cumbersome than the fix :)
Checklist:

[X] My code follows the style guidelines of this project (no GitHub actions complaints! run make lint before
committing!)
[X] I have commented my code, pydocstyle and darglint are happy, docstrings are in google docstring format, and all
docstrings include a summary, args, returns and raises fields (even if N/A)
[X] I have added tests that prove my fix is effective or that my feature works, if adding "functional" tests please
note if there are any considerations for the vrnetlab setup
[X] New and existing unit tests pass locally with my changes

glad to see someone using the read callback thing :D looks like the linter complaint is totally unrelated... ill figure that out later. LGTM, thanks as always and thanks for tests!! you're the best!

This is a cool feature I found recently.  But the coolest thing is that I can use it to advance the rich.progressbar as device emits ## chars to indicate file upload. Then I can show it to the user with fancy rich way.


Add support for levenshtein string function

The use case is that this helps with fuzzy matching in the case the incoming input can vary from the data. Would like to be able to match a node's name Alicia with Ailcia for instance.

At a minimum, a comparison on the fly should work fine without the need for indexing and maintenance.


Recovering bitcoin from missing channel

Lets say that I have several channels open filled with several mBTC in it, and then Murphy's law strikes and then the only thing I have now is the backup seed for lnd wallet. How do I recover all those bitcoins from those opened channels?

See #1364 and #175.


validate on blur

Getting a validation error just after setting an input value may be useful, cause you don't have to wait to submit the form. You can do it yourself using onBlur and the validate method, but we could add it to BoundComponent as a default.
@icoloma: Does this make sense?

Defaulting to validate on blur is, more frequently than not, super distracting. Particularly empty fields, where you don't know that the field is required until you focus on the next field, then have to focus back. With mouse-based users (the majority) this is a really inefficient way of interacting with the form.
It may be solved by marking the required fields in the UI, but (a) it's more work for the developer, (b) new source of bugs and (c) also something that the user learns with time interacting with the platform, not the first or second time. I'd go with Jakob's Law and do what is most common on other websites, which is to wait until form submission to learn what is incorrect.


[rewrite] Socket is re-connecting at every route change

I am creating a web application using Mithril 1.^ version and have a problem with socket. I'm connecting to socket in onload event as you see:
window.onload = function () {

	SocketService.connect()

	// header
	m.mount(document.querySelector("header"), Header)
	// footer
	m.mount(document.querySelector("footer"), Footer)

	// routes
	m.route(document.querySelector("routes"), "/", {
	    	"/": IndexPage,
	    	"/auth": AuthPage,
	    	"/account": AccountPage,
	    	"/bank": BankPage,
	    	"/roulette": RoulettePage,
	    	"/flipcoin": FlipcoinPage,
	    	"/crash": CrashPage,
	    	"/faq": FaqPage,
	})

}

In RoulettePage's oncreate method, I'm listening for some events:
SocketService.on('getinfo', function (data) {
    // ...
})

But, whenever I change route for X times,  'getinfo' event called X times. This problem exists for every socket event.
How can I prevent this problem? Thanks.
SocketService.js:
import AuthService from './AuthService'

export default {

	socket: null,

	connect: function () {
		this.socket = io.connect()
		this.socket.emit("auth", {token: AuthService.isLogged()})
		console.log("socket connected")
	},

	emit: function (where, data) {
		this.socket && this.socket.emit(where, data)
	},

	on: function (where, pass) {
		this.socket && this.socket.on(where, pass)
	}
}

Every time the route component is created (ie every time you get to that route from another), you're attaching a new socket event listener with on. You probably want to detach that listener when that component is removed.
I tried looking for the API to do this but the Socket.io documentation for the client API is broken - this page renders blank for me. Searching for how to do this yielded some community questions & answers - notably this answer from about 3 years ago which suggests it wasn't documented back then either. Some other scattered answers suggest there's an .off method, but I couldn't find any reference to this in the client source code. So you'll have to figure out how the API to remove event listeners that works with your codebase.
In any case, the solution would be to use the onremove component lifecycle hook to remove the hooks when the component disappears.
Assuming the Socket.io off hook (or whatever it's called) can take a second argument (like DOM event handlers), the code would be:
const RoulettePage = {
  oninit(){
    this.handleSocketInfo = function(){ /* ... */ }

    SocketService.on('getinfo', handleSocketInfo )
  },

  onremove(){
    SocketService.off('getinfo', handleSocketInfo )
  }
}

If it only takes one argument, I'd take a more conservative approach because from the name getinfo I assume a generic event that may be used elsewhere which you may not want to disconnect completely. In that case, I'd do something like this:
const RoulettePage = {
  oninit(){
    this.handleSocketInfo = function(){ /* ... */ }

    SocketService.on('getinfo', handleSocketInfo )
  },

  onremove(){
    this.handleSocketInfo = Function.prototype // < - turns the handler into a no-op
  }
}

Thank you @barneycarroll, I didn't know there are .off method exists in socket.io, I used like you mentioned and problem solved. Also I shortened the event names in the terms of simplicity but thanks for your suggestion.

@lugrugzo it's so strange that this seemingly obvious method isn't documented! Maybe file an issue with Socket.io?

@barneycarroll They're documented as events, so you might want to look for where the event constructor is defined. I found some docs by checking the Wayback Machine, which state at least that they are events, but oddly, they don't make it very clear what event class they use.


Fix open to work for non text documents

@IanMatthewHuff had a good point on the error line change. Opening non text documents didn't work anymore because I switched it to use openTextDocument instead of openUrl.
This changes it such that VS code is always used to open a file link, but it will also work with non text documents.

Codecov Report

Merging #9994 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #9994      +/-   ##
==========================================
- Coverage   61.19%   61.19%   -0.01%
==========================================
  Files         564      564
  Lines       30147    30147
  Branches     4561     4561
==========================================
- Hits        18449    18448       -1
+ Misses      11483    10666     -817
- Partials      215     1033     +818

Impacted Files
Coverage Δ

src/client/common/utils/platform.ts
70.58% <0%> (-5.89%)
:arrow_down:

src/client/language/textRangeCollection.ts
85.45% <0%> (ø)
:arrow_up:

...er/locators/services/workspaceVirtualEnvService.ts
81.81% <0%> (ø)
:arrow_up:

src/client/linters/flake8.ts
85.71% <0%> (ø)
:arrow_up:

src/client/testing/main.ts
14.87% <0%> (ø)
:arrow_up:

src/client/datascience/commands/commandRegistry.ts
28.15% <0%> (ø)
:arrow_up:

...lient/datascience/jupyter/kernels/kernelService.ts
51.14% <0%> (ø)
:arrow_up:

...er/jupyterInterpreterSubCommandExecutionService.ts
83.19% <0%> (ø)
:arrow_up:

.../datascience-ui/interactive-common/inputHistory.ts
89.74% <0%> (ø)
:arrow_up:

src/client/testing/display/picker.ts
46.89% <0%> (ø)
:arrow_up:

... and 157 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 513d479...a214a15. Read the comment docs.


Download failed

Please follow the guide below

You will be asked some questions and requested to provide some information, please read them carefully and answer honestly
Put an x into all the boxes [ ] relevant to your issue (like that [x])
Use Preview tab to see how your issue will actually look like

Make sure you are using the latest version: run youtube-dl --version and ensure your version is 2017.04.26. If it's not read this FAQ entry and update. Issues with outdated version will be rejected.

[ x] I've verified and I assure that I'm running youtube-dl 2017.04.26

Before submitting an issue make sure you have:

[x ] At least skimmed through README and most notably FAQ and BUGS sections
[ x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[x ] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[ ] Other

The following sections concretize particular purposed issues, you can erase any section (the contents between triple ---) not applicable to your issue

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add -v flag to your command line you run youtube-dl with, copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):
$ youtube-dl -v <your command line>
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['-v']
[debug] Encodings: locale cp1252, fs mbcs, out cp437, pref cp1252
[debug] youtube-dl version 2017.04.26
[debug] Python version 3.4.4 - Windows-10-10.0.15063
[debug] exe versions: ffmpeg N-84679-gd65b595, ffprobe N-84679-gd65b595
[debug] Proxy map: {}
...
<end of log>

Description of your issue, suggested solution and other information
Explanation of your issue in arbitrary form goes here. Please make sure the description is worded well enough to be understood. Provide as much context and examples as possible.
If work on your issue requires account credentials please provide them or explain how one can obtain them.
I get this error after downloading a list of urls,
ERROR: unable to open for writing: [Errno 2] No such file or directory: 'Chain Chronicle - The Light of Haecceitas -\Chain Chronicle - The Light of Haecceitas - (TV Version)\The Sword That Rends Darkness -  Chain Chronicle - The Light of Haecceitas - (TV Version) Episode 10 – The Sword That Rends Darkness.mp4.part-Frag0.part'
Traceback (most recent call last):
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpi8nwgst1\build\youtube_dl\downloader\http.py", line 175, in real_download
File "C:\Users\dst\AppData\Roaming\Build archive\youtube-dl\rg3\tmpi8nwgst1\build\youtube_dl\utils.py", line 449, in sanitize_open
FileNotFoundError: [Errno 2] No such file or directory: 'Chain Chronicle - The Light of Haecceitas -\Chain Chronicle - The Light of Haecceitas - (TV Version)\The Sword That Rends Darkness -  Chain Chronicle - The Light of Haecceitas - (TV Version) Episode 10 – The Sword That Rends Darkness.mp4.part-Frag0.part'
the odd part is that some how a "\" is added to the file path when i have not included that in the command line. I have also tried this with just the specific video link but to no avail.
This is my output -o "%(series)s/%(season)s/%(episode)s -  %(title)s.%(ext)s"

If the purpose of this issue is a bug report, site support request or you are not completely sure provide the full verbose output as follows:
Add -v flag to your command line you run youtube-dl with, copy the whole output and insert it here. It should look similar to one below (replace it with your log inserted between triple ```):


Bug with width of Orienteer tables

Fix bug with width of Orienteer tables in different locales.
Choose Orienteer locale to ru and width of Orienteer tables will be very big

Can't reproduce. Could you please attach some screenshot?

Laptop screen: 1366x768

There is new design in v1.4 and this bug already fixed.
So this issue already done.


[WIP] Bootstrap test suite

Hi! This module has not suite test, why?
I don't know the development's story but in my opinion beyond a maintainable problem this stuff is a visibility problem.
I cannot cover all module not but maybe together we can surmount this lack.
Thanks to a good test coverage we can works at new features without worry to break all..

Please remove the composer.lock

@Ocramius can I add travis.yml in this PR? Are you interested to enable it for this project?

In my opinion the test suite is implemented..
Now we can require testing for new feature and we can collaborate for a good coverage..

Merging as-is: please consider sending a second PR with the suggested changes


[AC] Update description for "Retry" and "Rejected" states.

What type of PR is this?
/kind cleanup

What this PR does / why we need it:
Update description for "Retry" and "Rejected" states. to be in sync with the site documentation.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?

NONE

/approve
LGTM pending for the last comment.

Anything else to add @mimowo ?
Leaving LGTM to you

Ah sorry, I got confused with the other PR.
This is ready.
/lgtm


Fix Broken Build

Hey @brideo, a good opportunity to get familiar with our travis build system just came up :)  It looks like the last pull request killed our build (I missed this when I merged).  You can see the failed build here.
https://travis-ci.org/astorm/pestle/
Are you interested in taking a look and seeing if you can fix it?  (hint: editing our .travis.yml file is involved).  If not let me know.  I so and you need some more help/hints let me know.
Thanks!

Fixed in https://github.com/astorm/pestle/pull/145


Workflow question

Hello,
This is not an issue but rather a question.
I'm using obsidian-livesync on 3 devices (2 win10 laptops and on iOS).
My obsidian-livesync-server is running as a docker on my Synology.
I also own a scanner (Brother ADS-2400N) that can write files on a share on that Synology.
I would like to dedicate one physical button of that scanner to send the resulting PDF into my Obsidian Inbox.
If I understand well, I could use filesystem-livesync in order to sync a folder on the synology with my obsidian vault.
I would then have the scanner write new files in the Inbox subfolder of that synology folder and filesystem-livesync would push those new files into my vault.
Is that correct ?
Is this service still on the bleeding edge or are you confident ?
Would you think of a simpliest method of pushing pdf files from my scanner to the obsidian vault (without starting my laptop ;-) ) ?
Pushing pdf files through  a REST API would also be an option as I may create a process handling the pdf produced by the scanner, doing OCR, smart renaming and uploading it to the right folder based on some baysian rules.
Thank you,
Pierre.

Is that correct ?

Yes, this is one of the use cases, especially do not want to take care of watching the file system and checking the differences.
(This is even able to be run if the storage and job-runner is a different machine.)
This app is on the bleeding edge. However, in most cases, we might not lose the files thanks to CouchDB and LiveSync history, substantially. And, we can back it up.
This is why this app stores and exports files in once reflected in the storage.

Sorry, I sent it on the way.

Pushing pdf files through a REST API would also be an option as I may create a process handling the pdf produced by the scanner, doing OCR, smart renaming and uploading it to the right folder based on some baysian rules.

Just in case, the closest solution is ObsidianReceiver.

Thank you for your reply.
I'll give it a try.
I will probably end up using self-hosted paperless-ngx to ingest, ocr, autorename and move files in subdirectories of one 'resource' directory directory placed in my vault.
In obidian, I would not manage/move those files but would link to them from notes.
This will give me the best of both excellent apps.
I'll let you know ;-)


'name' field added in Fixedaddress struct

added field ‘name’ in return_field slice of Fixedaddress struct

Can you also add "ipv4addr" to host record
https://github.com/infobloxopen/infoblox-go-client/issues/59.
Since both are regressions, we can fix in this commit only may be.

https://github.com/infobloxopen/infoblox-go-client/pull/69#issuecomment-392254690
Can you also add "ipv4addr" to host record
#59.
Since both are regressions, we can fix in this commit.

It would be better to have a separate commit for #59, since #62 that this PR fixes is very much independent.

Please make sure CI passes.


Question: what's the configuration to specify adb device ID?

Hi there,
In the target.config file, if have method to specify adb device ID so that can support multiple Android boards with one LISA environment?
Thanks,
Leo Yan

#73 addresses this. It should be merged soon.

Thanks.


Unable to publish change on kata

This kata: https://www.codewars.com/kata/558ecd6398ae4ed3350000c2/discuss#label-issue
I'm trying to resolve issues on the description and the tests. Just the text on the test hints, I'm actually not changing the logic. It is for python

It passed in the end


Excluding some sdk's from build

Hi, the original .gdap file can't be compiled in godot 3.3.3 because of different sdk versions. I changed the .gdap file to
[config]
name="GodotAppodeal"
binary_type="local"
binary="GodotAppodeal.1.0.1.release.aar"
[dependencies]
remote=["com.appodeal.ads:sdk:2.10.2.+"]
custom_maven_repos=["https://artifactory.appodeal.com/appodeal"]
Also pached manifest
<application tools:replace="android:label, android:allowBackup"
and build.gradle - added jcenter() in all repositories:
repositories {
google()
jcenter()
Now it builds. But can't get that singlton from the code
_appodeal = Engine.get_singeton("GodotAppodeal")

returns null or closes the application at all.
Any ideas?

@vuguzum use adb


Verify the filelock dependency is dumb, and remove it

All the target users use Linux. We probably don't need cross platform flexibility to the extent filelock allows.
Ones fewer dependency is more valuable IMO.

Thanks for the correction.
I'll mention that I'm mainly concerned with bandwidth authorities, but yes your testnet bwauth is non-Linux.
If it's at least safe to assume Unix-like, we can probably implement something like filelock's UnixFileLock ourselves.

Done in 5f111319c2b757d73aa014637eaf7bdbe34c0300


If you apply ?_facet_array=tags then &_facet=tags does nothing

Start here: https://v0-30-2.datasette.io/fixtures/facetable?_facet_array=tags

Note that tags is offered as a suggested facet. But if you click that you get this:
https://v0-30-2.datasette.io/fixtures/facetable?_facet_array=tags&_facet=tags
The _facet=tags is added to the URL and it's removed from the list of suggested tags... but the facet itself is not displayed:

The _facet=tags facet should look like this:

Implementing #1552 has made a fix for this bug even more important.

I think the problem here may be in the design of the JSON returned by facets. It looks like this:
  "facet_results": {
    "tags": {
      "name": "tags",
      "type": "array",
      "results": [...],
      "hideable": false,
      "toggle_url": "/fixtures/facetable.json?_facet=tags&_trace=1&_nosuggest=1",
      "truncated": false
    },
    "created": {
      "name": "created",
      "type": "date",
      "results": [...]

The problem then is that the tags key is over-ridden by the second facet with a different type against the same column name!
https://latest-with-plugins.datasette.io/fixtures/facetable?_trace=1&_facet=created&_facet_date=created&_facet_array=tags&_facet=tags confirms that the SQL queries for those facets are being executed - but the final JSON doesn't show them on https://latest-with-plugins.datasette.io/fixtures/facetable.json?_trace=1&_facet=created&_facet_date=created&_facet_array=tags&_facet=tags

The big question here is do I break any existing clients of the "facet_results" JSON API?
It's still pre-1.0 so I could break them, but I've also built my own code against this in the past so it's likely other people have too.
If I don't break them, I will instead need to come up with a naming convention for those keys - something like "tags__array" for example.

Datasette's own code doesn't actually use the keys in facet_results - it instead loops through sorted_facet_results which is defined like this: https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/views/table.py#L937-L941
And used like this:
https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/templates/table.html#L154-L156

Really facet_results here should be an array of objects, not an object that maps poorly designed string keys to those objects.

Decision: as an initial fix I'm going to de-duplicate those keys by using tags__array etc - with a _2 on the end if that key is already used.
I'll open a separate issue to redesign this better for Datasette 1.0.

Here's where facet_results is built up: https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/views/table.py#L752-L758
So the decision to key things based on column name is actually embedded deep in the existing facet classes here:
https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/facets.py#L224-L226
https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/facets.py#L395-L397
https://github.com/simonw/datasette/blob/992496f2611a72bd51e94bfd0b17c1d84e732487/datasette/facets.py#L510-L512

This bad design is even covered in the plugin hooks documentation: https://docs.datasette.io/en/0.59.4/plugin_hooks.html#register-facet-classes
It does at least have the following warning:

Warning
The design of this plugin hook is unstable and may change. See issue 830.

Good news - GitHub's new code search doesn't show ANYONE using that plugin hook - not surprising since it has that documentation warning plus it's just not a very clearly usable hook: https://cs.github.com/?scopeName=All+repos&scope=&q=register_facet_classes -repo%3Asimonw%2Fdatasette

Since no-one is using that hook I'm going to alter its contract slightly. I'll still keep the existing JSON format working though, since it's much more likely that people are using that JSON somewhere.

I updated the example code in the facet plugin hook documentation: https://github.com/simonw/datasette/blob/95d0dd7a1cf6be6b7da41e1404184217eb93f64a/docs/plugin_hooks.rst#register_facet_classes

Demo of the fix: https://latest.datasette.io/fixtures/facetable?_facet=created&_facet_date=created&_facet=tags&_facet_array=tags#facet-tags

And here's the new JSON: https://latest.datasette.io/fixtures/facetable.json?_facet=created&_facet_date=created&_facet=tags&_facet_array=tags&_nosuggest=1
{
  "database": "fixtures",
  "table": "facetable",
  "is_view": false,
  "human_description_en": "",
  ...
  "facet_results": {
    "created": {
      "name": "created",
      "type": "column",
      ...
    },
    "tags": {
      "name": "tags",
      "type": "column",
      ...
    },
    "created_2": {
      "name": "created",
      "type": "date",
      ...
    },
    "tags_2": {
      "name": "tags",
      "type": "array",
      ...
    }
  }
}