Graph Editor: Usability Improvements

This groups a set of suggestions / proposals for improving how users interact with the Graph Editor.
The hope is to take the "best" ideas and designs and incorporate them if they will help interaction / usability.
Each item below is broken down into:

Problem: description of issue
Proposal: Proposal to address the issue
Sub-issue: Link to sub-issue if applicable.

Folks can add / modify each item.
Please up / down vote an item.
@lfl-eholthouser  is the main stake-holder for this.

Problem
All UI is uniformly "grey" and aesthetically "dull"
Proposal
Add node color themes.
Issue
https://github.com/AcademySoftwareFoundation/MaterialX/issues/1373

Problem
It is very hard to distinguish data flow paths as they show up as overlapping lines with uniform appearance
Proposal
From Lee Kerley: Color graph edges to help to improve readability

Problem
It is very hard to find specific node types such as inputs, outputs, renderables, and conditions
Proposal
Add in color coding based on node-group or category. Note that this has overlap with color theming.

Problem
Text labels/ fields in the property editor and node graph are hard to distinguish from each other (e.g. for importance, for categorization etc)
Proposal
( Pulled from #1207 from @dbsmythe )

I'd really like for nodes to indicate what their "nodecategory" is (e.g. add or over or fractal2d) right in the node itself, drawn in boldface at the top inside the node box, e.g. below the title with the node name and above the "out" output. Without this, it's hard to look at just the graph and see what mathematical operation it's doing.
Similarly, in the Node Property Editor, it'd be nice if the nodecatagory value (e.g. the word "add" or "over" etc) was much more prominent: boldface, a different color, or something.

Problem
Connected Inputs and Outputs don't show current (receiving or outgoing) values making it harder to debug the flow / state of a graph at a certain point ("does this input actually receive what I think it does")

Proposal
Display readonly values next to [type]

Problem
When trying to resize the window sometimes the inner UI layout element gets selected (because it sets the arrow cursor on windows as well)
Proposal
Disable resizing behaviour of inner layout element (?)
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/1f1347d8-2b57-460c-963b-ff5cb32647c4

Problem
Refreshing a graph has to be done by re-opening the file.
When debugging a graph that is generated by external tools I currently have to go to "File/Open File" and open the same graph again
Proposal
Add shortcut to reload the currently opened graph from disc (e.g. CTRL+R or F5)

Problem
Invalid graph information is not displayed in the graph and just in the console window
Proposal
Highlight nodes that are invalid / produce errors and display the error information in e.g. the Node Property Editor (?) as well

Problem
When adding a new node with keyboard only the node list stays open and hides the newly created node which is confusing ("was the node created? where is it?")
Proposal
Hide the node list when selecting a node and accepting with keyboard (ENTER)
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/896431a1-809a-4b23-889c-a1248f795a39

Problem
Already connected inputs have to first be disconnected to then connect to another output.
Proposal
Allow updating input connections by dragging another output connection over the port
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/bb4ab8ed-50da-49bf-8de1-222101aae6d8

Problem
Connections dont start / end at the input/output dots but instead seem to use the center of the text. This is on windows 10
Proposal
Connections should start / end at the node edge or at the dot

Problem
Connections only work one-way / connections can not be made by dragging Input to Output ports
Proposal
Allow connecting ports by dragging input over output port
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/7d690588-e5ab-44c2-b161-f21f95e2ea0d

Problem
Enabled show all inputs toggle pushes the toggle to the end of the list which forces scrolling to hide the list again
Proposed solution
Toggle stays at the same position and behaves more like a unfold header item
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/dcf3cf9f-697a-45e5-a952-48ba051d7f41

Problem
Material has to be saved to see the actual material code that is being written
Propsal
Add Viewer/Panel to display the MaterialX code that I would get when saving the graph (+1 if the code can highlight the part that I have currently selected in the visual graph + also visually mark/highlight the input nodes maybe)

Problem
CTRL+S always prompts with the filepath where the graph should be saved to (even if it was saved to a particular location already before)
Proposal
Remember last save location and override the file with CTRL+S as well as add CTRL+Shift+S for saving to a new location

Problem
Graph Window doesn't show name of currently opened graph
Proposal
Show name of currently opened graph in the window

Problem
Selecting and cutting a group of nodes (CTRL+X) does sometimes only cut the connection and sometimes paste only the nodes without the connection
Solution
Connections should not be lost. When selecting nodes it should not just remove the connection. The nodes should be pasted in the same connected state as before
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/61b42c3e-85a1-4fed-bff4-b26cc9a99aba

Problem
editing swizzle channels is very very slow (everything freezes for 1-2 seconds)
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/467b4324-2c3b-492e-b340-b1d30d1b7ecb

Problem
Exported graphs all have position values baked in which makes the graph harder to read when trying to understand how things are connected.
Proposal
Add option to save without position data

Problem
On windows GraphView doesn't remember which graph I had opened before and where the window was on the screen
Proposal
Remember last opened material + position on screen when starting GraphView

Problem
Trying to open a node_graph the first time (double click) does first compile the shader and then I have to double click again to actually open the subgraph
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/5c8e0e34-993c-40bf-9dde-93820e436f87

Problem
Open graph via file association is not supported

Problem
No way to remove inputs (e.g. if I have changed some values in the standard surface shader during testing)
Solution
Add a way to reset inputs to their default values which should also (perhaps) hide them again if "Show all inputs" is enalbed

Problem
Property Editor UI is very cramped and leaves very little space between categories making it hard to read
Proposal
Add more space between items that don't immediately belong together
For example between Category and Inputs headers should be ~half a line vertical space
Similarly it would be helpful if the buttons below Inputs (namely "Show all inputs" and "Node Info") would be pushed down half a line.
Header elements like "Category" and "Inputs" could be bold

Input elements could use the available horizontal space more properly:

Input element control items should be aligned for better readability

Problem
The console window doesn't print a message when i open a new graph. This makes it difficult to understand if validation errors in the console window where caused by the newly opened graph or were from a graph previously opened.
Proposal
Print a short message before opening a new graph to the console (e.g. <timestamp> Opening <filename> at <filepath> )

Problem
Dragging a node does not select it. I was multiple times fooled by thinking I had the node selected
Proposal
Dragging a node should select it (especially since it visually looks selected)
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/d91269b6-e389-4147-af64-b64669195ed0
Example from Unity ShaderGraph
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/89eef760-2619-4aef-bc46-c7dcd1c9c328

Problem
Property editor doesnt reflect multi-selection. It always just displays one of the selected nodes
Proposal
Property editor should render UI for all nodes selected.
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/21db509f-b903-4eef-b33f-614bb71ce82e

Problem
Copy paste of a node has unexpected inputs/defaults, pasted node is in a different state
Proposal
Copy paste should produce a copy with the same UI state
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/eea0f386-ae01-422f-aa13-e5a46ce10a96

Problem
Automatic naming of nodes is confusing / misleading. E.g. creating a constant_vector4 node for the first time is named constant_vector4 (also reflecting the type of the node, that's good) but creating a constant_vector4 node for the second time suddenly is named constant_vector5 instead of constant_vector4 (2) or something similar explicit

Proposal
Node names ending with a number (reflecting their value type) should not just increment

Perhaps the value type should not be included in the name but displayed differently on the node? Then it would become something like: constant_2 and vector3 be rendered elsewhere on the node (?)

Slots could indicate the value type (e.g. value would become value (4) or value (xyzw) and value(rgba) ? )

https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/77ba7620-d539-465b-b02d-3a3239720b3c
Example in Unity

Problem
Some input fields are too small for the content
Proposal
Use the horizontal space available
somewhat related to the proposal mentioned above: https://github.com/AcademySoftwareFoundation/MaterialX/issues/1398#issuecomment-1683723538

Problem
Environment can not be changed
Proposal
Add option to change environment map (e.g. specify a EXR or HDR texture)

Problem
Scroll in PropertyEditor does also zoom in viewport in some cases
Viewport interaction doesnt seem to check / play well with the scrollview
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/e3aab602-3fe6-44c8-86bb-9c5af8c1b613

Problem
Errors are hard to debug without visual indication / validation errors
Proposal
Visualize invalid connections

Problem
Trying to delete character in string field with DELETE key does delete the currently selected node

Problem
When creating a new material I find myself always creating the same basic material
Proposal
new could have e.g. a standard_surface material already setup
or it could work like in Blender with a template material stored somewhere in the installation directory that I could also override and change to my liking

Problem
Connections sometimes visually work both ways but are not actually working which is very confusing when debugging
Related to the comment above: https://github.com/AcademySoftwareFoundation/MaterialX/issues/1398#issuecomment-1680203806
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/28202f20-0e7b-4b01-a1a0-4869bd52ecc3

Request
Add file drop support to open a graph
https://github.com/AcademySoftwareFoundation/MaterialX/assets/5083203/0ba02e5a-d0fa-43e8-b202-fb7f08a031f1

Problem
Editor doesnt have a file icon (the same is true for the MaterialX Viewer)

Problem
Inputs list unnecessary shows scrollbar

Problem
Alignment of output slots is not working correctly in certain cases

Problem
uiname is not used for node inputs (e.g. to name combine vector3 inputs x y z instead of in1 in2 in3)

Thanks so much for this list, @marwie and @kwokcb, and I'm marking it as a Good First Issue for our upcoming Dev Days event in October, since developers can select a single issue from this list to tackle in a short time period.

Problem
Graph Window doesn't show name of currently opened graph which becomes a problem when having multiple GraphView windows open ("I want to look at the marble_material")
Proposal
Show name of currently opened graph in the window (if any), e.g. marble_material - MaterialX Graph View title should start with the material name as it might be easily cut off otherwise, see screenshot below)

Hey @jstone-lucasfilm , I had a quick look at this one to get myself more familiar with the document structure in MaterialX. I have a "fix" that calls glfwSetWindowTitle from the Graph::drawGraph function. I am not a big fan of this as it requires passing the GLFWwindow down from "main" to the above function call. I preferred it slightly over extracting the document out of the Graph class though, but both feel a bit mweh.
Happy for better suggestions, or if this is the best we can do without doing bigger refactors I am happy to make a PR.

Thanks for taking a look at this one, @sandersteen, and I'm CC'ing @lfl-eholthouser for her expertise on the systems that you're asking about in this question.

Hi @sandersteen! Thanks for looking at the issue. For the extracting the doc from the graph class option, would it be possible to just extract the name of the document instead of the whole document? Or are other aspects of the document needed?

@jstone-lucasfilm I'm thinking of having a go at issue https://github.com/AcademySoftwareFoundation/MaterialX/issues/1398#issuecomment-1680360553.
Hope that one is available.

@n-jay Thanks for taking a look at this subtask, and I'm CC'ing @kwokcb, who did some closely related work in #1499.
I believe there are aspects of the subtask (e.g. the Save/SaveAs distinction) that didn't quite make their way into the final commit for #1499, but this earlier work should make a great starting point.

Noted @jstone-lucasfilm, didn't notice that PR. Seems like I'd been running an outdated local main branch

but this earlier work should make a great starting point.

Yes, some of the doubts I had about the original implementation such as the _materialFilename had been addressed here, so it's cool to know I've been going down the correct path. 😄
I look forward to Bernard's response.

Hi @n-jay,

This revision had CTRL-S save functionality implemented.
I think the thing to resolve is that do you allow save of file automatically loaded at startup. The premise I proposed was to not do so. Perhaps the solution is to make this situation require a file dialog prompt. Otherwise CTRL-S will overwrite without a  file dialog prompt. CTRL-SHIFT-S would be just map to the current behaviour.
Once you have something, it might be easier to continue any follow-up in a draft PR.
Hope this helps.

Noted @kwokcb

I think the thing to resolve is that do you allow save of file automatically loaded at startup. The premise I proposed was to not do so. Perhaps the solution is to make this situation require a file dialog prompt. Otherwise CTRL-S will overwrite without a file dialog prompt. CTRL-SHIFT-S would be just map to the current behaviour.

I see. So if I'm understanding correctly you're referring to the last saved file getting loaded on startup, yes?
And the file dialogue prompt would be to manually pick the required file to load at startup?
Would a File > Open Recent option work in this instance?

Following up on ASWF Dev Days 2023, many of these issues have been addressed (either completely or partially), so I believe we should close out this original report, and post new tasks for additional improvements that are required.
Thanks to @kwokcb and @marwie for posting this, and I believe it was a major part of the success of our Dev Days event!


feat: adds support for https, cookies, and http redirects

The missing link is that since we're using a self-signed cert, electron doesn't want to allow it over https. This fix should work, but doesn't seem to, and I suspect its because we're using astilectron?
const remote = require('electron').remote;
const app = remote.app;
app.commandLine.appendSwitch('ignore-certificate-errors', 'true');
// SSL/TSL: this is the self signed certificate support
app.on('certificate-error', (event, webContents, url, error, certificate, callback) => {
    event.preventDefault();
    console.log("cert-error")
    callback(true);
});

Note that that console.log does indeed fire, but then right afterwards, we get:
Failed to load resource: net::ERR_INSECURE_RESPONSE
when requesting the thumbs

@sanderpick i actually don't think astilectron internals are needed, but possibly some of the issues i'm running up against are because we aren't running vanilla electron? but i'm starting to think that's not the issue, and its (hopefully) something simpler.

Take a look now @sanderpick. Should be very close.

Ok, I think this is GTG. I'm not sure if I've properly 'addressed' @sanderpick's request for changes? I'm currently having issues with pairing, so if someone could please make sure this is working for them before merging. I'll try the pairing again in the morning.

Merge this one first @sanderpick. If conflicts arise, the other one will be easier to fix.


Support Postgres network types (inet)

Motivation
I would like to use Postgres network types (i.e. inet) in my Model definitions. I understand there may be workarounds, so this is not urgent but would be a quality-of-life improvement.
Proposed Solutions
I believe this is nearly/already supported in sea-query: https://github.com/SeaQL/sea-query/issues/187. From my understanding, supporting this in sea-orm requires updating the logic that converts a query result into an instance of a Model: perhaps here.
Additional Information
Currently, attempts to use inet will result in a runtime error.

Hey @001wwang, sorry for the delay. Network types are supported on SeaQuery, however, it's only supported by PostgreSQL but not by MySQL and SQLite.
So, the questions was do we want to bring the network types support to SeaORM for PostgreSQL only? Or, support it for MySQL and SQLite as well. We can simply serialize network types as string for MySQL and SQLite.
Thoughts?
CC @tyt2y3

No worries at all, this is not a blocker for us. We only use PostgreSQL so I'll hold off on any judgement for MySQL and SQLite. Thanks for the context.

@billy1624 I think support network types only for PostgreSQL (for example SqlAlchemy, python ORM, support it only for PostgreSQL).

@tyt2y3 @billy1624 if it's, I can prepare PR)

Let me think about it

Any updates? @tyt2y3

I would like this feature! Question about implementation: to what Rust type would inet map? std::net::IpAddr seems like a logical choice, but Postgres's inet type also can contain the subnet. So I guess we would have to just discard that, right?  Is there a better type?

One option would be ipnetwork, which is already supported by SQLx (and diesel), but it's not stable, and SQLx itself is not able keep the version up to date: https://github.com/launchbadge/sqlx/pull/2148
Another option is ipnet, which has a stable API, many downloads and updates, and it's supported by diesel too, for example.

What is the current progress on this issue?  I found that sqlx already provides inet type support for postgresql ：https://github.com/launchbadge/sqlx/blob/main/sqlx-postgres/src/types/ipnetwork.rs

The issue is still outstanding. No concrete plan for it yet.

with-ipnetwork doesn't seem to exist in cargo.toml?
https://github.com/SeaQL/sea-orm/blob/039e4423d3ef2fe4959c0b19c2b37bbd3f90d9b9/src/driver/sqlx_postgres.rs#L559-L573

With roughly this set of dependencies and features
sea-orm = { version = "1.1.0-rc.1", features = [
    "debug-print",
    "runtime-tokio-rustls",
    "sqlx",
    "sqlx-postgres",
] }
sea-query = { version = "0.32.0-rc.1", features = ["with-ipnetwork"] }
sea-query-binder = { version = "0.7.0-rc.2", features = ["with-ipnetwork"] }

where, sea-query and sea-query-binder are only needed because sea-orm has no "with-ipnetwork" feature that would get passed onwards,
I am able to define a wrapper new-type ```
#[derive(Debug, Eq, Clone, PartialEq)]
pub struct IpNetworkWrapper(pub ipnetwork::IpNetwork);
and use it with `DeriveEntityModel`.
Inserting works fine, but parsing a DB response I cannot get to work.
How should a `TryGetable` implementation look like?

Of course it'd be nicer if we can integrate this all into SeaORM.
For ref: https://www.sea-ql.org/SeaORM/docs/generate-entity/newtype/
https://github.com/SeaQL/sea-orm/blob/master/sea-orm-macros/src/derives/value_type.rs

I found it is hard to implement TryGetable without having access to the underlying row data in QueryResult.
Although sqlx::Decode is implemented for ipnetwork::IpNetwork, we cannot get an appropriate type from QueryResult to use it. I think it is hard to support new SQL type outside of sea_orm.
Therefore, I tried to implement it in sea_orm directly and submit a draft PR.


Temporarily disable Shelley's transaction generator

It can be re-enabled as soon as #2680 has been resolved.
Bonus: this speeds up the Shelley ThreadNet tests, which spend most of their
time in this horribly slow transaction generator, see
https://github.com/input-output-hk/cardano-ledger-specs/issues/1901.

I've spawned https://buildkite.com/input-output-hk/ouroboros-network-nightly/builds/262 to validate this diff (and to see how much speedup we get)

bors r+

The regular nightly test passed too: https://buildkite.com/input-output-hk/ouroboros-network-nightly/builds/263#b775acea-9167-4828-9854-64c3b9dc7d3c.


WebSocketOptions snippet not working

AllowedOrigins.Add didn't work for me on .net core 2.2. Is the sample wrong or the property deprecated?

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

ID: a3b0cac1-adc7-434c-d867-6e28e39bdae7
Version Independent ID: 762efeed-010e-f422-03d0-22d6681b2851
Content: WebSockets support in ASP.NET Core
Content Source: aspnetcore/fundamentals/websockets.md
Product: aspnet-core
GitHub Login: @Rick-Anderson
Microsoft Alias: tdykstra

Hello @Sherbanm ... It should be there ...
https://github.com/aspnet/AspNetCore/blob/release/2.2/src/Middleware/WebSockets/src/WebSocketOptions.cs
You might need the Options namespace: using Microsoft.Extensions.Options;

Thanks for contacting us. We believe that the question you've raised have been answered. If you still feel a need to continue the discussion, feel free to reopen it and add your comments.


Update Extension does not show reload anymore [Insiders build]

Issue Type: Bug

You get the notification in the Extensions panel that you have an update for an extension (e.g. shows "update to x.x.x").
Click the Update button for that extension.
Button changes to installing.
Button changes to "update to x.x.x" showing the same version.
Reload window
Check extension and it was updated to the "x.x.x" version.

The previous behavior showed a "reload" on that button after the installation was completed.


Performance while selecting nodes on a "big" tree

It takes a noticeable period (avg. 3 seconds) to highlight the node to be selected on a relatively big tree, say a thousand leaf nodes with the tree depth of 2. Any idea about improving the performance on big trees?

You are right, this library's widget model's js code needs to be restructured. It currently stores all the created nodes in a global noderegistry (doesn't seem to delete nodes). and every click iterates through all the nodes (even from different trees) and deselects them. It could be made significantly faster with minor changes, but seems like the repo is now unmaintained.

I have same issue. I add 800 or more 1000 nodes, error happens. So I add 500 nodes.
But if I select node, it is very slow.

#72
I try to fix it.


tour: slice of slices

Context: https://tour.golang.org/moretypes/15 about slice of slices
Samples do not compile (it is maybe the exercise ?)
Slice of slices are authorized by specifications but are more complex to initialize.
Append does not work on an empty slice of slice.
If init is set with 1 element like board := [1][]int then append will work on board[0]
Another solution is to add slice notation to the added element and not the basic type element (0).
In example 15, printSlice cannot work if argument is not set to (s [][]int).
Could you confirm that slice of slices is supported ?
If yes, sample should look like this unless errors are the exercise.
`package main
import "fmt"
func main() {
var s [][]int
printSlice(s)
// append works on nil slices.
s = append(s, []int{0,})
printSlice(s)

// The slice grows as needed.
s[0] = append(s[0], 1)
printSlice(s)

// We can add more than one element at a time.
s[0] = append(s[0], 2, 3, 4)
s = append(s,  []int{2, 3, 4,}) //or add a separate slice
printSlice(s)

}
func printSlice(s [][]int) {
fmt.Printf("len=%d cap=%d %v\n", len(s), cap(s), s)
}`

This is a language question, not an issue with the tour. Please read golang.org/wiki/Questions


[Feature suggestion] oauth login

Since reddit has moved to oauth it would be great to have that here. (Also makes me feel better than having to give my password directly to the application)

I'm not too familiar with oauth but how would this work with an open source project? I can't force everybody to go to reddit and sign up for a developer key.

I haven't touched Oauth that much in Python, but here is an open source project, gcalcli that uses Google Oauth.

Looks like they slap it right in the code...
__API_CLIENT_ID__ = '232867676714.apps.googleusercontent.com'
__API_CLIENT_SECRET__ = '3tZSxItw6_VnZMezQwC8lUqy'

Yeah...that's not how you're supposed to do it.
Everyone on stackoverflow suggests using a config file, which would require each user to supply their own keys.

I was thinking like how newer mobile clients do it. They just drop to a webview to login to reddit. That way you can manage application access from within reddit.

Reddit is deprecating cookie-based authentication on August 3rd, so this is now a huge priority. Even unauthenticated users will be throttled.
https://www.reddit.com/r/redditdev/comments/2ujhkr/important_api_licensing_terms_clarified/

Thanks for the status update.

@michael-lazar so atm it wants the index.html file from ~/.config/rtv/templates/templates/index.html
It would be far more ideal and portable to have this read from /usr/share/rtv/templates/index.html or similar. So that it can be updated accordingly from various means of packaging. (same method used in setup.py to include manpage)

@shaggytwodope what I ended up doing was moving the templates folder back inside of the project. That allowed me to configure setuptools to add the index.html to /usr/local/lib/python2.7/dist-packages/rtv/templates/. I would have preferred to keep the templates/ folder at the root of the project but I just couldn't get it to work without some giant workaround in setuptools.

This is finally released as of v1.6!


Better errors when the block param is mistyped

Motivation
When the block parameter was not typed properly with T.proc or Proc, the error that the user would get is Method call does not exist on... https://srb.help/7003 with an error pointing to the place where the block is called inside the method. Example: https://sorbet.run/#%23 typed%3A true
class A
  extend T%3A%3ASig
  sig {params(x%3A Integer).returns(Integer)}
  def bar(%26x)
    yield
  end
end
This change should improve the experience and point to the place of the definition of the block argument type suggesting to wrap it into the T.proc or Proc.
What changed
As a part of the solution there were two things that were done:

Added the loc for the place where argument type definition is happening
Added a validation that checks that the type parameter that is used for a block would be derived from Proc.
If the validation is failing there is also an autosuggestion to wrap the type provided in the T.proc

The first change also allows to address the following comment: https://github.com/sorbet/sorbet/blob/1af71480d0672e21ab09fa9d22ccd6b2c79c6246/infer/environment.cc#L1022
If the suggested approach in the PR to tracking the loc of the argument types is accepted, I would be glad to add a PR to implement the suggestion in the comment above.
Current limitations
Technically it should be possible to have a sig like this sig{type_parameters(:U).params(block: T.type_parameter(:U)).returns(T.type_parameter(:U)))}. Which means that the passed in type of the block is returned back to the caller. However, it will currently won't work because of https://github.com/sorbet/sorbet/issues/2888.
I am trying to fix it in a separate PR, but until then this signature would not work
Test plan
See included automated tests.

@jez thanks for the comments. With respect to the example that you provided, tbh I think that both of the errors are good, since it would be safe to assume that if your method definition is
sig {params(x: Integer).void}
def foo(x)
  x.bar # bad error
end

it should be safe to assume that inside the foo method x will be an Integer. And it would be tough to check that all the method calls to foo are passing in String.
However, for blocks, it should be safe to assume that if the block parameter definition in the sig is using Integer as a type instead of T.proc that it should be reported as an incorrect definition in the sig.
With respect to adding more data: the only reason I did it was to have the loc of the place where the type is defined to give an autosuggest for how to suggest the change. Something like this
Replace with T.proc.returns(Integer)
sig {params(block: Integer).void}
                                 ^^^^^^^
def foo(&block)
end

I definitely did not need it to actually figure out if there is a problem or not, since we have an actual type info already in. So if that's not something that would be valuable I could remove it.
Let me know if it makes sense and/or if I'm missing something

Closing due to staleness


opae-sdk: change version to 2.1.2

Signed-off-by: anandaravuri<EMAIL_ADDRESS>

Coverage remained the same at 65.344% when pulling b91ebc49e13bc055f14cbfc3b3ecbda9dbab8894 on aravuri/rel_2.1.2 into 7652250f4ceb914cd69288de03c11bae24368713 on master.

Merging as admin as CI approver is not available at this moment.


Create feedstock-pr.yml

This is the change that I'm going to push out to all the feedstock repos to enable the PR tests.
What do y'all think?


Adding "debug" mode to pywps ... and at least keep the workdirs

Description
In the current pywps (master) the workdir is removed at the end of a process, no matter the status of the process (failed, success). Check the clean function:
https://github.com/geopython/pywps/blob/fd45020a491764228f503b13829b60ebc1e1544b/pywps/app/Process.py#L267
Is is good for production but during development it can be very helpful to keep the workdir to have a chance to see what has gone wrong.
We should introduce a debug or testing mode in pywps to keep the workdir. Probably in all cases (process failure and success).
Environment

operating system:
Python version:
PyWPS version: pre 4.2.0
source/distribution
[ ] git clone
[ ] Debian
[ ] PyPI
[ ] zip/tar.gz
[ ] other (please specify):
web server
[ ] Apache/mod_wsgi
[ ] CGI
[ ] other (please specify):

Steps to Reproduce
Additional Information

I think the easiest fix is just to add a config option for debug/testing mode and check in the clean function if it is set.

Do we want to have this option in the server section?
https://github.com/geopython/pywps/blob/fd45020a491764228f503b13829b60ebc1e1544b/pywps/configuration.py#L76
[server]
testmode=true

fixed by PR #426.


Bug occurred about setting a custom timezone is not supported

I use sequelize version 5.19.2. and use mysql.
and set-up like below code.
There is in test file
const Database = require('../../models').sequelize;
    sequelizeMockingMocha(
        Database,
        path.resolve(path.join(__dirname, '../fake-trainer-database.json')),
        {'logging': console.log}
    );

There is in model set-up file
let sequelize;
if (config.use_env_variable) {
  sequelize = new Sequelize(process.env[config.use_env_variable], config);
} else {
  sequelize = new Sequelize(config.database, config.username, config.password, config);
}
...

db.sequelize = sequelize;
db.Sequelize = Sequelize;

db.Trainer = require('./trainer')(sequelize, Sequelize);

I don't know why this error happened.
Are there error in my code?
plz help me.
Error: Setting a custom timezone is not supported by SQLite, dates are always returned as UTC. Please remove the custom timezone parameter.
    at new Sequelize (node_modules/sequelize/lib/sequelize.js:273:13)
    at Function.create (node_modules/sequelize-mocking/lib/sequelize-mocking.js:95:31)
    at createAndLoadFixtureFile (node_modules/sequelize-mocking/lib/sequelize-mocking.js:123:14)
    at wrapper (node_modules/sequelize-mocking/node_modules/lodash/lodash.js:5193:19)
    at Context.<anonymous> (node_modules/sequelize-mocking/lib/sequelize-mocking-mocha.js:33:13)
    at processImmediate (internal/timers.js:439:21)
    at process.topLevelDomainCallback (domain.js:126:23)

TypeError: Cannot read property '__originalSequelize' of null
    at Function.unhookNewModel (node_modules/sequelize-mocking/lib/sequelize-mocking.js:277:29)
    at Function.restore (node_modules/sequelize-mocking/lib/sequelize-mocking.js:249:26)
    at Context.<anonymous> (node_modules/sequelize-mocking/lib/sequelize-mocking-mocha.js:43:18)
    at processImmediate (internal/timers.js:439:21)
    at process.topLevelDomainCallback (domain.js:126:23)

Hi @BaeJi77
Could you provide a tiny zip with a sample to illustrate your issue?
What is the provided "config" object?
Here a thread around timezone and sequelize: https://github.com/sequelize/sequelize/issues/854
Regards

i met the same question, and the error tips like this
------------Setting a custom timezone is not supported by SQLite, dates are always returned as UTC. Please remove the custom timezone parameter--------
need help ?


Add support for permitted peer

ActionSendStreamDriverPermittedPeer is an option that allows us to narrow the list
of the hosts that we want to talk to. (Works with TLS only)
I compared the PR against 2.2 branch since I would like Chef 11 support. It could easily cherry picked and added to the master afterwards.

@dastergon Thanks for your contribution. I've rebased, and added it to PR #112.


View all courses

@d2l-joelp, @ryantmer
Note: currently fixing the failing tests..
There are still a couple of issues, but I don't want them to delay other testing/feedback any longer than I already have while I look at them, especially as one of them relates to a Polymer behavior:

Keyboard navigation in the All Courses view when not using Shadow DOM seems to be problematic, preventing iron-overlay-behavior wraparound logic from working.
Translating isn't implemented as the library/element to use hasn't been completely decided yet. That's intentional and will be revisited.

I think my merge gave you some conflicts, you'll wanna rebase :(

This LGTM :+1: - any further thoughts? @d2l-joelp @apalaniuk

@ryantmer @d2l-joelp
Anything additional I'll put into an additional PR.


shelf_psu_status does not match between rest/zapi

Verified in 23.02
Compared the shelf_psu_status metric published by these two pollers - they are identical
bin/poller --poller sar --promPort 12991 --collectors Rest,RestPerf --objects Shelf,Disk
HARVEST_NO_COLLECTOR_UPGRADE=1 bin/poller --poller sar --promPort 12990 --objects Shelf,Disk


Update Vale at Red Hat reference guide

Make updates based on Fabrice's PR when it merges: https://github.com/redhat-documentation/vale-at-red-hat/pull/164

@aireilly #164 is merged, you can go ahead!


System crash after stopping screenshare when the screenshare window gets closed

Hyprland Version
 System/Version info
Hyprland, built from branch  at commit 582d6233c802327fea45a14d146e7cbab5fe4b1e  ().
Date: 2024-04-13
Tag: , commits: @COMMITS@

flags: (if any)

System Information:
System name: Linux
Node name: lapfix
Release: 6.8.3
Version: #1-NixOS SMP PREEMPT_DYNAMIC Wed Apr  3 13:32:51 UTC 2024

GPU information:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GA107M [GeForce RTX 3050 Mobile] [10de:25a2] (rev a1) (prog-if 00 [VGA controller])
06:00.0 VGA compatible controller [0300]: Advanced Micro Devices, Inc. [AMD/ATI] Cezanne [Radeon Vega Series / Radeon Vega Mobile Series] [1002:1638] (rev c6) (prog-if 00 [VGA controller])

os-release: ANSI_COLOR="1;34"
BUG_REPORT_URL="https://github.com/NixOS/nixpkgs/issues"
BUILD_ID="24.05.20240410.1042fd8"
DOCUMENTATION_URL="https://nixos.org/learn.html"
HOME_URL="https://nixos.org/"
ID=nixos
IMAGE_ID=""
IMAGE_VERSION=""
LOGO="nix-snowflake"
NAME=NixOS
PRETTY_NAME="NixOS 24.05 (Uakari)"
SUPPORT_URL="https://nixos.org/community.html"
VERSION="24.05 (Uakari)"
VERSION_CODENAME=uakari
VERSION_ID="24.05"

Bug or Regression?


Fix cluster-create error

Cluster create is failing for one of the clusters sometimes with the following error -
error: the path "oep-e2e-rancher/utils/e2e-crd.yml" does not exist
The following pipeline failed due to the above error - Gitlab pipeline

The following PR resolves the above issue - PR


Expand/Collapse Left Nav Depending on Active Panel

Describe the feature you'd like
Currently the left navigation in the editor displays the top-level property and all of it's sub-properties and nested resource templates like this example:

In the above screenshot, the active top-level property panel, Title Information, is expanded with Instance Title, Variant TItle, Paralle Title, and Collective Title  being display. However, the top-level Contributors and Publication, Distribution, Manufacture, and Production properties panels are also expanded as well with their sub-properties being displayed.
Instead we want to only display the active property-panel's sub-properties and any nested templates in the left nav and collapse all other properties, so it should look like this (even if  Contributors and Publication, Distribution, Manufacture, and Production  have values in their properties.

What I think this means in terms of editor components: the property nav item does not render child subject nav items unless it is the active property nav item.


perf: allocate responses capacity

Codecov Report

Merging #618 (2a2757f) into main (ebd686a) will increase coverage by 0.09%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #618      +/-   ##
==========================================
+ Coverage   71.94%   72.04%   +0.09%
==========================================
  Files         252      252
  Lines       25534    25583      +49
==========================================
+ Hits        18370    18430      +60
+ Misses       7164     7153      -11

Flag
Coverage Δ

unit-tests
72.04% <100.00%> (+0.09%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

crates/net/downloaders/src/bodies/concurrent.rs
82.26% <100.00%> (ø)

crates/stages/src/error.rs
57.14% <0.00%> (ø)

crates/stages/src/stages/execution.rs
89.41% <0.00%> (+0.14%)
:arrow_up:

crates/stages/src/stages/bodies.rs
93.69% <0.00%> (+0.38%)
:arrow_up:

crates/stages/src/stages/sender_recovery.rs
94.22% <0.00%> (+1.77%)
:arrow_up:

crates/executor/src/executor.rs
87.30% <0.00%> (+2.56%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


Coping files from share to Windows locations

Coping aspnetcore.dll, aspnetcore_schema.xml from file share to valid Nano Windows locations.

Hi @gitchomik, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. Real humans will now evaluate your PR.

TTYL, DNFBOT;

@kichalla please review

:shipit: Thanks!


Ability to turn off sorting

I'd like the ability to turn off sorting so that I can disable this on phones.

+1. Need the ability for having a dynamic on/off mode to enable/disable dnd for a given list.

Anyone managed to turn this off?

+1 for easy way to turn off/on sorting. Ideally through a built-in directive, like 'sv-sort-enable="true"'

Looking for this also.

+1

+1


Delete outdated .gitattributes file

This seems outdated. Should we delete or update it? It references platform/src/ which no longer exists, but crates/roc_host_src/glue.rs was added in 0.16.0.

CC @lukewilliamboswell

Yeah longer required


Fix exporting MeshInstances without a Skeleton in the GLTF module

Before this PR, when exporting a Godot scene as a GLTF file, some meshes without skeletons would fill the console with error messages because the GLTF module was looking for a skeleton node at path "". This PR fixes that.
This PR also simplifies the code because for some reason it was getting the skeleton twice. I was pretty confident but just in case I tested exporting with a skeleton to make sure it still works and yes it does.

@lyuma @TokageItLab @SaracenOne @fire Do you think we can review this before feature freeze?

Thanks!


add TON token on Oraichain & Osmosis

https://github.com/oraichain/chain-registry-fork/blob/master/cosmoshub/chain.json#L429
This "version" line needs to remove the "-lsm" part of it. This is why the data validation check is failing.


Question about retention/data overwrite - no issue

First of all thanks a lot of this code.  I have been using this on a Raspberry Pi with Influxdb and Grafana and it has been working really well (I copied your graphs, really liked the way you presented the data).  I'm in the process of moving the setup to a home-built NAS running OpenMediaVault and putting InfluxDB and Grafana into Docker containers so I want to make sure I do this properly for the long run.
On the RPi I have been running ForecastMetrics as a cron job every hour.  It was just something I figured would work.  But now that I'm reading up on this a little more I'm confused as to how much data will accumulate in InfluxDB since it doesn't look like old data is being overwritten and there is no retention policy (I'm using 1 year in InfluxDB).  Originally when I was setting this up it didn't look like unnecessary data was being accumulated but now I'm not sure.  What is your suggestion on how to populate an InfluxDB database?
If the answer is just a cron job I may see if it makes sense to put it inside a container (not sure why, just to see if I can do it as I'm learning to use containers).  Any obvious issues with that?
Thanks
H

Ted,
Fantastic.  It would be great if either data overwrite or retention could be implemented.  I always like to have things 'clean'.  But only if it isn´t too much of a work.
The comment on VictoriaMetrics and InfluxDB is very helpful.  I was wondering why you switched.  Based on a quick search it looks like InfluxDB has a propensity for corruption (not sure if it is significant or not).  I'm assuming writing to VictoriaMetric is identical to InfluxDB?  I have scripts in Homekit writing various values (temperature, humidity, radon, motion) into InfluxDB and I'm planning an expansion.  But now would be a good time to switch to VictoriaMetrics since I'm moving the database (and Grafana) to an (over specified) OpenMediaVault NAS.
Thanks,
Hjalti

I'll have a look then, I've created a new issue to track it.
You indeed can write identical influx line protocol to VictoriaMetrics, plus it also can scrape prometheus endpoints, and more.

Looks like in InfluxDB 2.x, each "bucket" has its own retention period: https://docs.influxdata.com/influxdb/v2.5/reference/internals/data-retention/#bucket-retention-period
So I don't think there's any need to add retention policy support, since you should be able to configure whatever bucket retention needed already.
I'll look into overwriting next.

I've added a new config option, overwrite_data that when set to true, will again result in a single metric for forecast data, with new forecasts overwriting the old.
I'm going to also upgrade the influx client to 2.x before releasing a new version.

Thanks a lot for all the information.  This is really helpful.  I'm actually running InfluxDB 1.8 at the moment, as the authentication seemed to be simpler (can avoid it).  I have InfluxDB 1.8 and Grafana running in the containers and I'm working on figuring out how to run forecastmetrics as a cron job in a container as well (which port does it use?).  I think what I'm going to do is to try to get this going so I can free up my Raspberry PI 2 for other uses (wall based Google calendar with Grafana graphs, my RPi 1b is struggling there).  Then later I can rather easily get a separate container running with either InfluxDB 2 or VictoriaMetrics and swap by switching external ports.
Thanks again

Good news is that even when using the Influx 2.x client, authentication still works with Influx 1.8 by setting the "authentication token" to "username:password", leaving the organization blank, and setting the bucket to "database[/retention-policy]". https://github.com/influxdata/influxdb-client-go#influxdb-18-api-compatibility
ForecastMetrics doesn't have any incoming connections - it makes http GET requests to NWS/Visualcrossing if enabled, and then makes http POST requests to influx/VM.
Sounds like you have interesting projects! Enjoy :)

One other comment about using VictoriaMetrics - with the upgrade to the influx 2.x client it will require using vmauth (a simple auth proxy) with it, because VM doesn't support the "Auhtorization: Token ..." header: https://github.com/VictoriaMetrics/VictoriaMetrics/issues/1897

Just released v3.2.0 with two new features:

overwrite_data: true option available in the config yaml. This will only write one forecast series instead of one per hour, and overwrite the previous forecast data each time.
Influx v2 client. The ForecastMetrics config has changed to match the new client:

org: "" - don't set this for influx 1.8
auth_token: user:pass - set it like this for influx 1.8
bucket: database[/retention-policy] - set to your db name if you want to just use the default autogen policy

Let me know if this release helps or you have any trouble.

This is great.  Let me take it for a spin.  I got my container running with v3.1.2 but the data is looking a bit different from the data that is being pulled by the RPi (at least what is stored in the InfluxDB container).  I'll try v3.2.0 and see if there is any change with the overwrite.  I'll keep you posted.
Thanks again.

I forgot to ask - do you happen know what version you were using on the RPi? There's no embedded version or anything - you'd have to remember what you downloaded or compare the bytes, sorry

Something is not right.  I'm pretty sure I did everything the same when I built the image with v3.2.0 as what I did with  v3.1.2 and now I'm getting this when I run forecastmetrics:
2022/12/03 23:24:27 Looking up NWS location
2022/12/03 23:24:27 Getting NWS forecast
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x72433e]

goroutine 1 [running]:
main.App.RunForecast({0xc0001807b0, {0x861a18, 0xc00005e8c0}, {0xc000180600}, {{0xc0001804e0, 0x1, 0x1}, {{0xc00001a5e8, 0x16}, {0xc00001ce70, ...}, ...}, ...}}, ...)
        /home/runner/work/ForecastMetrics/ForecastMetrics/main.go:144 +0x3be
main.main()
        /home/runner/work/ForecastMetrics/ForecastMetrics/main.go:103 +0x673

Here is my config file.  I'm wondering if it is not set up correctly:
locations:
  - name: My Home
    latitude: xx.xxxxxx
    longitude: -yy.yyyyy

influxdb:
  # this is the IP of the InfluxDB container
  host: http://<IP_ADDRESS>:8086
  # for influx 1.8/VictoriaMetrics, use "user:password"
  auth_token: influxuser:psswd
  # for influx 1.8/VictoriaMetrics, use blank
  org: ""
  # for influx 1.8/VictoriaMetrics, use "database" or "database/retention-policy"
  bucket: myDBname

forecast:
  measurement_name: forecast

astronomy:
  enabled: true
  measurement_name: astronomy

sources:
  enabled:
    - nws
    - visualcrossing
  visualcrossing:
    key: __my_key__

http_cache_dir: /var/lib/forecastmetrics/cache
state_dir: /var/lib/forecastmetrics/state
# overwrite_data will write a single series of forecast data,
# instead of a new series each time the program runs. This works
# with influxdb but not with VictoriaMetrics.
overwrite_data: true

Thanks,
H

Nope, that's a bug I didn't notice because gasp I didn't try it with overwrite_data set to true. Releasing 3.2.1 now.

Added version information to the binary :)

OK it is working now.  Or at least the same as v.3.1.2 I ran in the container.  Still some issue with the data coming in compared to the RPi.  My cloud cover is coming in at 100% (7 days out) and it never was predicted to be 100%.  The humidity and temperature doesn't look the same as what the RPi is pulling in.
The version running on the RPi was installed in February and the size is 8012066 bytes.  I think it is 3.1.2?
I need to have it run overnight and see what it looks like tomorrow.
Thanks!

I just started running the latest version and am also seeing some weirdness where refreshing the dashboard has metrics appearing and disappearing. Will need to investigate further tomorrow.

Here are snippets of the graphs of two data streams:
Original running on RPi:

New one running in Docker container:

The top is the temperature and the scale is 0  to 35C.  Both are actually showing warmer that what it is right now (I'm in southern PA, close to Philly, I used my coordinates from Google maps, I'm wondering if that is not correct?).
Anyway, let me play with this some more this weekend.  I'm starting to think I messed up somewhere along the way.
H

Philly coords would look something like
locations:
  - name: Philly Phanatic
    latitude: 39.9056
    longitude: -75.1666

So if you're close to that you're probably good.
The cloud cover does look different between the two, you're sure they're set to the same location?
If the yellow/green dot graphs are temperature, they look more like wind directions to me. Temperatures don't jump like that but wind directions would jump from 350 degrees to 0 degrees.

Hey that's awesome! As for 3 days of forecast, I can tell you what's up there - VM only supports 2 days into the future as I mentioned above. I rebuild it every once in a while allowing 30 days into the future, feel free to install a binary from here: https://github.com/tedpearson/VictoriaMetrics/releases/tag/v1.84.0-54741f6
Once you do that you should be good to go (other than precipitation amount forecasts, which are only forecast about 3 days out by NWS).
For retention, it's  just a flag to the VM process: -retentionPeriod 1y https://docs.victoriametrics.com/#retention

Ahh yes, got it.  I will recreate the VM container with your binary.  Thanks a lot.
So far it looks like it is working except the Homekit automations but that is a Homekit issue (common).
Thanks again.

The victoriametrics binary that I got from the link above is not running on the plain vanilla Debian image.  I get the following error when I log into the container:
victoria-metrics: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.32' not found
I'll try the Ubuntu image and if that doesn't work, I guess I'll have to compile it.


OkHttp 4.10.0: Explicit termination method 'close' not called

I am using OkHttp 4.10.0 and I've just gotten this strict mode warning:
StrictMode  D  StrictMode policy violation: android.os.strictmode.LeakedClosableViolation: A resource was acquired at attached stack trace but never released. See java.io.Closeable for information on avoiding resour
              ce leaks.
           D      at android.os.StrictMode$AndroidCloseGuardReporter.report(StrictMode.java:1986)
           D      at dalvik.system.CloseGuard.warnIfOpen(CloseGuard.java:336)
           D      at java.io.FileOutputStream.finalize(FileOutputStream.java:495)
           D      at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
           D      at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
           D      at java.lang.Daemons$Daemon.run(Daemons.java:140)
           D      at java.lang.Thread.run(Thread.java:1012)
           D  Caused by: java.lang.Throwable: Explicit termination method 'close' not called
           D      at dalvik.system.CloseGuard.openWithCallSite(CloseGuard.java:288)
           D      at dalvik.system.CloseGuard.open(CloseGuard.java:257)
           D      at java.io.FileOutputStream.<init>(FileOutputStream.java:253)
           D      at okio.Okio__JvmOkioKt.appendingSink(JvmOkio.kt:178)
           D      at okio.Okio.appendingSink(Unknown Source:1)
           D      at okhttp3.internal.io.FileSystem$Companion$SystemFileSystem.appendingSink(FileSystem.kt:66)
           D      at okhttp3.internal.cache.DiskLruCache.newJournalWriter(DiskLruCache.kt:302)
           D      at okhttp3.internal.cache.DiskLruCache.readJournal(DiskLruCache.kt:295)
           D      at okhttp3.internal.cache.DiskLruCache.initialize(DiskLruCache.kt:236)
           D      at okhttp3.internal.cache.DiskLruCache.get(DiskLruCache.kt:426)
           D      at okhttp3.Cache.get$okhttp(Cache.kt:172)
           D      at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:47)
           D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
           D      at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
           D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
           D      at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
           D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
           D      at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
           D      at okhttp3.internal.connection.RealCall.execute(RealCall.kt:154)
           D      at com.vanniktech.feature.rssreader.backend.DefaultRssFetcher$fetch$6$1.invokeSuspend(DefaultRssFetcher.kt:151)
           D      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
           D      at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
           D      at kotlinx.coroutines.internal.LimitedDispatcher.run(LimitedDispatcher.kt:42)
           D      at kotlinx.coroutines.scheduling.TaskImpl.run(Tasks.kt:95)
           D      at kotlinx.coroutines.scheduling.CoroutineScheduler.runSafely(CoroutineScheduler.kt:570)
           D      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.executeTask(CoroutineScheduler.kt:750)
           D      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.runWorker(CoroutineScheduler.kt:677)
           D      at kotlinx.coroutines.scheduling.CoroutineScheduler$Worker.run(CoroutineScheduler.kt:664)

I can see that newJournalWriter() is called here: https://github.com/square/okhttp/blob/e46a200fceaa5fbd9c9278eebe9c978399bd329c/okhttp/src/main/kotlin/okhttp3/internal/cache/DiskLruCache.kt#L295 and it's closed here: https://github.com/square/okhttp/blob/e46a200fceaa5fbd9c9278eebe9c978399bd329c/okhttp/src/main/kotlin/okhttp3/internal/cache/DiskLruCache.kt#L679
I'm not familiar with the code but can it be that when newJournalWriter() there is already a journalWriter set which would need to be closed?!
My calling site (DefaultRssFetcher:151) looks like this:
withContext(Dispatchers.IO) {
  okHttpClient.newCall(makeRequest(url).execute() }.use { response ->
    ...
  }
}

So I do close the response that I get from OkHttp.

initialize is called the first time the Cache is used.
Are you calling cache.close, when you close your client, or release it?
https://github.com/square/okhttp/blob/okhttp_4.10.x/okhttp/src/main/kotlin/okhttp3/OkHttpClient.kt#L111-L115

I don't call cache.close(), neither to I close / release my client. I'm in an Android Application here.

Do you have a singleton client instance.
I'll try to reproduce based on your original hypothesis. Can put protective close in place.

Yup. In my custom Android Application class I have a private val okHttpClient by lazy(NONE) { ... }

@vanniktech there are some existing tests that were not enabled because of this problem. I've tried improving some, not sure it's worth backporting yet, until all issues are fixed.
Hopefully the scope of this problem for you is limited, if it's the same cases it's likely just recovering from cache corruption and not an ongoing leak of the running program.

A big downside is that I can't really enable the missing close() detection of StrictMode in my entire application by forcing a crash. So I might leak some other resources else where.
Is this already fixed in OkHttp 5? I can use an alpha version if that has a fix for this.

Probably in the next alpha?

Nice. I can even verify this before you folks build a new alpha version by trying out the snapshot.

Please try now, I'm not 100% certain it's solved, but at least if we can reproduce it now, there is a clean tested based with the existing bugs fixed.
https://github.com/square/okhttp#releases

Unfortunately not fixed:
             StrictMode  D  StrictMode policy violation: android.os.strictmode.LeakedClosableViolation: A resource was acquired at attached stack trace but never released. See java.io.Closeable for infor
                            mation on avoiding resource leaks.
                         D      at android.os.StrictMode$AndroidCloseGuardReporter.report(StrictMode.java:1986)
                         D      at dalvik.system.CloseGuard.warnIfOpen(CloseGuard.java:336)
                         D      at java.io.FileOutputStream.finalize(FileOutputStream.java:495)
                         D      at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:319)
                         D      at java.lang.Daemons$FinalizerDaemon.runInternal(Daemons.java:306)
                         D      at java.lang.Daemons$Daemon.run(Daemons.java:140)
                         D      at java.lang.Thread.run(Thread.java:1012)
                         D  Caused by: java.lang.Throwable: Explicit termination method 'close' not called
                         D      at dalvik.system.CloseGuard.openWithCallSite(CloseGuard.java:288)
                         D      at dalvik.system.CloseGuard.open(CloseGuard.java:257)
                         D      at java.io.FileOutputStream.<init>(FileOutputStream.java:253)
                         D      at okio.Okio__JvmOkioKt.sink(JvmOkio.kt:174)
                         D      at okio.Okio.sink(Unknown Source:1)
                         D      at okio.JvmSystemFileSystem.appendingSink(JvmSystemFileSystem.kt:105)
                         D      at okio.ForwardingFileSystem.appendingSink(ForwardingFileSystem.kt:212)
                         D      at okio.FileSystem.appendingSink(FileSystem.kt:89)
                         D      at okhttp3.internal.cache.DiskLruCache.newJournalWriter(DiskLruCache.kt:311)
                         D      at okhttp3.internal.cache.DiskLruCache.readJournal(DiskLruCache.kt:304)
                         D      at okhttp3.internal.cache.DiskLruCache.initialize(DiskLruCache.kt:245)
                         D      at okhttp3.internal.cache.DiskLruCache.get(DiskLruCache.kt:437)
                         D      at okhttp3.Cache.get$okhttp(Cache.kt:177)
                         D      at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.kt:48)
                         D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
                         D      at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.kt:83)
                         D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
                         D      at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.kt:76)
                         D      at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
                         D      at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:202)
                         D      at okhttp3.internal.connection.RealCall.execute(RealCall.kt:155)

Maybe this https://github.com/square/okhttp/blob/master/okhttp/src/jvmMain/kotlin/okhttp3/internal/cache/DiskLruCache.kt#L397 also needs to use closeQuietly?

When does it surface? While the app is running?
any chance it's an unlikely init race? private val okHttpClient by lazy(NONE) seems unsafe.

any chance it's an unlikely init race? private val okHttpClient by lazy(NONE) seems unsafe.

Yeah that's actually the problem. Wow. Even with 4.10.0. Kudos to you for finding a non related close issue!


Docker Engine Swarm Mode + Docker pull

Description
I have docker engine running in swarm mode with 4 nodes in the swarm cluster
Steps to reproduce the issue:

I run the command to start a docker service using an image stored in the dockerhub private repo.
sudo docker service create --name serviceName  --network myNetwork --publish 8761:8761 orgName/imageName:version

Describe the results you received:

It seems that if the image does not exist in the local node where the service is scheduled to run, docker does not automatically pull the image from the private repo and the service fails to start
However if I manually pull the image in all of the nodes in the cluster and then start the service, it seems to work.

Describe the results you expected:

I expected docker to automatically pull the image from the private repo hosted in the hub. To make sure that there are no connectivity issues I logged into the private repo using docker login in each of the 4 nodes in the cluster to make sure that the credentials to be used to connect to the repo are stored locally in the json file. Is this how its supposed to work? Should it not automatically pull from hub if the image is not available locally? Im I missing something?

Additional information you deem important (e.g. issue happens only occasionally):**
Output of docker version:
Client:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:
 OS/Arch:      linux/amd64

Server:
 Version:      1.12.1
 API version:  1.24
 Go version:   go1.6.3
 Git commit:   23cf638
 Built:
 OS/Arch:      linux/amd64

Output of docker info:
Containers: 1
 Running: 0
 Paused: 0
 Stopped: 1
Images: 201
Server Version: 1.12.1
Storage Driver: devicemapper
 Pool Name: docker-253:0-204218855-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 10.74 GB
 Backing Filesystem: xfs
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 4.401 GB
 Data Space Total: 107.4 GB
 Data Space Available: 30.95 GB
 Metadata Space Used: 7.598 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.14 GB
 Thin Pool Minimum Free Space: 10.74 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 WARNING: Usage of loopback devices is strongly discouraged for production use. Use `--storage-opt dm.thinpooldev` to specify a custom block storage device.
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.107-RHEL7 (2016-06-09)
Logging Driver: json-file
Cgroup Driver: cgroupfs
Plugins:
 Volume: local
 Network: bridge host null overlay
Swarm: active
 NodeID: b11gagg35v2tojxnqemze6ey6
 Is Manager: true
 ClusterID: 7f9kda0i54yj0jl8js0vt84u5
 Managers: 3
 Nodes: 4
 Orchestration:
  Task History Retention Limit: 5
 Raft:
  Snapshot Interval: 10000
  Heartbeat Tick: 1
  Election Tick: 3
 Dispatcher:
  Heartbeat Period: 5 seconds
 CA Configuration:
  Expiry Duration: 3 months
 Node Address: <IP_ADDRESS>
Runtimes: runc
Default Runtime: runc
Security Options: seccomp
Kernel Version: 3.10.0-327.28.2.el7.x86_64
Operating System: Red Hat Enterprise Linux Server 7.2 (Maipo)
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 47.01 GiB
Name: cmcmdmz101
ID: N6XG:EQOG:FPUM:GYCY:HXHQ:DOVU:AHFM:TFBB:4GM6:WKC3:QCN2:6RLP
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Username: cmcdocker
Registry: https://index.docker.io/v1/
WARNING: bridge-nf-call-ip6tables is disabled
Insecure Registries:
 <IP_ADDRESS>/8

Additional environment details (AWS, VirtualBox, physical, etc.):

@thaJeztah Any ideas about this one?

Please see the --with-registry-auth flag.
This passes registry credentials down to each node that gets a task scheduled from this service so it can pull the image as neccessary.
Unfortunately our docs page has been revamped and I am having a hard time finding this option there... maybe it's just missing?

it's in the CLI reference documentation; https://github.com/docker/docker/blob/v1.12.1/docs/reference/commandline/service_create.md
https://docs.docker.com/engine/reference/commandline/service_create/

Thanks @cpuguy83  and @thaJeztah fpr your responses.. Should that even matter? Like I mentioned, I logged into all the hosts and manually executed the docker login command so that the credentials are stored locally in the config.json file. Assuming that its needed, could you please give me an example of the syntax?  How do I pass the password? I could not find an example in the docs.. sudo docker service create --name serviceName --network myNetwork  --publish 8761:8761 --with-registry-auth USERNAME orgName/imageName:version ?? is this right?

@saithala --with-registry-auth is just a boolean flag, no arguments needed.
docker login is a mostly client-side command. Basically it asks for your credentials, then instructs the daemon to login with them... but this "login" is not persisted, it's per request.
What happens is the credentials are persisted on the client side so that when auth is required it can just read the credentials and pass them to the daemon.
In swarm mode, it was decided to not automatically pass credentials since worker nodes may be untrusted.

Thanks @cpuguy83.

I think the question is answered, so I close this issue, but feel free to continue the discussion if it's not clear


False positives for cloudfront subdomain takeover

Most of the time aquatone returns false positives while checking for subdomains pointing to Cloudfront. I believe the root cause for this issue is aquatone checks only HTTP version of the subdomain and not HTTPS. In the case of Cloudfront, both HTTP and HTTPS should show "Bad request" for a successful subdomain takeover.

If you can give an example domain I may be able to create a patch

http://documents.uber.com/

Thank you very much for reporting and providing the information! @ramimac, are you up for tackling this?

@michenriksen Happy to, should have a pull request in by EOD

submitted the pull for the trivial fix, I was seeing the false positive however @streaak  so cant confirm

Can't wait 😃

I got 2 false positives too

@fbl4kd43m0n I've had an open PR fixing this since october, feel free to pull the branch

thank you @ramimac


Deprecate stuff

fixes https://github.com/Azure/autorest/issues/1285

🤖 AutoRest automatic publish job 🤖
> will publish once PR gets merged

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%

🤖 AutoRest automatic feature coverage report 🤖
feature set version 2.3.13
❌ General: 99%
2 out of 522 features are not covered by tests
getComplexPolymorphismComplicated, putComplexPolymorphismComplicated
✔ Azure: 100%


Support Thunderstorm and Next-Week Properties in Bulgarian

In the near future, the API will begin generating the following new properties:

possible-thunderstorm
thunderstorm
next-sunday
next-monday
next-tuesday
next-wednesday
next-thursday
next-friday
next-saturday

Add support for these properties to Bulgarian. (Information is available in the README, and examples are visible in /lib/lang/en.js and /test_cases/en.js.)

Tagging @srmihnev. Please take a look if you have a chance!

I'll do my best :)


React instead of Angular?

How feasible is that? (Will research the code base when I get to a computer, and perhaps close this issue myself :)

React already have a ton of these. Google around.


I am sharing 'log (2)' with you

One app for all your Word, Excel, PowerPoint and PDF needs. Get the Office app: https://aka.ms/officeandroidshareinstall

I


file_put_contents: failed to open stream: No such file or directory

Getting the following exception while following along with a Laracasts tutorial:
[ErrorException]
file_put_contents(/home/vagrant/code/app1/database/migrations/2014_09_20_194400_create_users_table.php): failed to open stream: No such file or directory
Command:
php artisan generate:migration create_users_table --fields="username(25):string:unique, email:string:unique, password:string(64)"
Using homestead.  Already checked permissions and the vagrant user can write to the folder.  No other problems using the generators for controllers, etc...
Edit: Just noticed that it is missing the 'app' directory under app1(test laravel app name)
Edit 2: Edited config.php under the generators config folder and updated this line to include 'app/':
//     'migration_target_path'   => base_path('app/database/migrations'),      //
and that worked.

Just to Clarify for any one else having this problem.  This is caused by the config set up for Jeffery Ways generator tools being set for Laravel 5. I am using Laravel 4.2. So for me the config file was here.
vendor/way/generators/src/config/config.php
All of the generated files are pointing to the wrong places. I changed it to this
 /*
    |--------------------------------------------------------------------------
    | Where the generated files will be saved...
    |--------------------------------------------------------------------------
    |
    */
    'model_target_path'   => app_path(),

    'controller_target_path'   => base_path('app/controllers'),

    'migration_target_path'   => base_path('app/database/migrations'),

    'seed_target_path'   => base_path('app/database/seeds'),

    'view_target_path'   => base_path('app/views')

I wrote this comment with out testing until now. And it worked !! Yay!

thanks guys. it worked work me


HTTPie in Cygwin

Hi,
i've installed httpie on windows through pip.
I want to use it through cygwin but it only works through powershell or cmd.
I always get the error
Philipp@lupimi ~ $ http POST http://localhost:50231/api/Contact name=scott age:=100
usage: http-script.py [--json] [--form] [--pretty {all,colors,format,none}]
                      [--style STYLE] [--print WHAT] [--headers] [--body]
                      [--verbose] [--all] [--print-others WHAT] [--stream]
                      [--output FILE] [--download] [--continue]
                      [--session SESSION_NAME_OR_PATH | --session-read-only SESSION_NAME_OR_PATH]
                      [--auth USER[:PASS]] [--auth-type {basic,digest}]
                      [--proxy PROTOCOL:PROXY_URL] [--follow]
                      [--max-redirects MAX_REDIRECTS] [--timeout SECONDS]
                      [--check-status] [--verify VERIFY]
                      [--ssl {ssl2.3,ssl3,tls1,tls1.1,tls1.2}] [--cert CERT]
                      [--cert-key CERT_KEY] [--ignore-stdin] [--help]
                      [--version] [--traceback] [--debug]
                      [METHOD] URL [REQUEST_ITEM [REQUEST_ITEM ...]]
http-script.py: error: Request body (from stdin or a file) and request data (key=value) cannot be mixed.

is there anything i can provide?
regards

age = 100 ??
If it doesn't work try installing httpie in a virtualenv.

@celevra It looks like stdin under Cygwin doesn't present itself like a TTY so HTTPie thinks it's redirected from another program or a file. So it's probably a bug in Cygwin. What output does this command give you?
$ python -c 'import sys; print(sys.stdin.isatty())'

As a workaround, you could use the --ignore-stdin flag. And for convenience, it can be added it to your ~/.httpie/config.json under "default_options": ["--ignore-stdin"]. Then to enable the reading of stdin when you need it for particular invocations, it is possible to disable the flag again via --no-ignore-stdin.

@jkbrzt thanks for the fast answer.
the command gives me a False back.
Do you really think its a bug in Cygwin? Woudn't that be huge problem for other programms also?
the workaround works like a charm, thanks for that

@celevra yep, I think it's Cygwin. It might be that only Python is affected by that, but the sys.stdin.isatty() method should return True since sys.stdin refers to a terminal.

If it only affects Python, definitely a bug. If Cygwin just never presents itself as a TTY, I could imagine someone saying this was a design decision not a bug. In any case, this is surprising ... but good to find. Oh, Cygwin...

It's worth asking: should HTTPie check sys.stdin.isatty() and if it returns False, then default to --ignore-stdin (perhaps with a WARN-level log message)?

Python for windows is a windows console application, so it won't work well in msys/cygwin's ansi terminal.
You may use python for cygwin rather than python for windows,
$ apt-cyg install python
$ python -c 'import sys; print(sys.stdin.isatty())' # => True

Or, you may run python for windows with winpty:
$ python.exe -c 'import sys; print(sys.stdin.isatty())' # => False
$ winpty python.exe -c 'import sys; print(sys.stdin.isatty())' # => True

Thanks for the tips, @Arnie97. I'm closing this now as there's nothing HTTPie can do about that.


Wrong version with carthage

Carthage fetchs outdated version of framework that is written with swift 2.2

Fixed, use
github "stephencelis/SQLite.swift" ~> 0.11.0

Hi @jberkel,
My Cartfile is
github "stephencelis/SQLite.swift" ~> 0.11.0

I used carthage update --platform iOS and then I got this output
*** Fetching SQLite.swift
*** Checking out SQLite.swift at "0.11.0"
*** xcodebuild output can be found in /var/folders/_d/rfdv7tb52db75fwdp181s0pc0000gn/T/carthage-xcodebuild.W5pkb8.log
*** Building scheme "SQLite iOS" in SQLite.xcodeproj
2016-11-25 12:30:00.185 xcodebuild[18309:3976730] [MT] DVTToolchain: Failed to load toolchain: <DVTFilePath:0x7f988d460000:'/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2016-05-09-a.xctoolchain'>: Error Domain=DVTToolchainErrorDomain Code=6 "Info.plist:OverrideBuildSettings:{SWIFT_LINK_OBJC_RUNTIME,SWIFT_DISABLE_REQUIRED_ARCLITE,ENABLE_BITCODE} must contain a string or array of strings" UserInfo={NSFilePath=/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2016-05-09-a.xctoolchain, NSLocalizedDescription=Info.plist:OverrideBuildSettings:{SWIFT_LINK_OBJC_RUNTIME,SWIFT_DISABLE_REQUIRED_ARCLITE,ENABLE_BITCODE} must contain a string or array of strings}
2016-11-25 12:30:36.297 xcodebuild[18411:3977828] [MT] DVTToolchain: Failed to load toolchain: <DVTFilePath:0x7fb3fbc5c2d0:'/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2016-05-09-a.xctoolchain'>: Error Domain=DVTToolchainErrorDomain Code=6 "Info.plist:OverrideBuildSettings:{SWIFT_LINK_OBJC_RUNTIME,SWIFT_DISABLE_REQUIRED_ARCLITE,ENABLE_BITCODE} must contain a string or array of strings" UserInfo={NSFilePath=/Library/Developer/Toolchains/swift-DEVELOPMENT-SNAPSHOT-2016-05-09-a.xctoolchain, NSLocalizedDescription=Info.plist:OverrideBuildSettings:{SWIFT_LINK_OBJC_RUNTIME,SWIFT_DISABLE_REQUIRED_ARCLITE,ENABLE_BITCODE} must contain a string or array of strings}
<module-includes>:1:1: warning: umbrella header for module 'SQLite' does not include header 'sqlite3.h'
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:424:13: warning: 'sqlite3_trace' is deprecated
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:431:9: warning: 'sqlite3_trace' is deprecated
<module-includes>:1:1: warning: umbrella header for module 'SQLite' does not include header 'sqlite3.h'
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:424:13: warning: 'sqlite3_trace' is deprecated
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:431:9: warning: 'sqlite3_trace' is deprecated
<module-includes>:1:1: warning: umbrella header for module 'SQLite' does not include header 'sqlite3.h'
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:424:13: warning: 'sqlite3_trace' is deprecated
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:431:9: warning: 'sqlite3_trace' is deprecated
<module-includes>:1:1: warning: umbrella header for module 'SQLite' does not include header 'sqlite3.h'
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:424:13: warning: 'sqlite3_trace' is deprecated
Source/Carthage/Checkouts/SQLite.swift/SQLite/Core/Connection.swift:431:9: warning: 'sqlite3_trace' is deprecated

Firstly, this is weird because I saw that you already fixed the sqlite3_trace issue.
Then I get a linker error:
SQLite.framework/SQLite compiled with older version of Swift language (2.0) than previous files (3.0) for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

So Carthage fetches an outdated version of framework still? What could be ging wrong?

The sqlite_trace warning won't go away until you target iOS 10. It's not a problem though.
Somehow it compiled using an older version of Swift. You can force 3.x with
carthage update --platform iOS --toolchain com.apple.dt.toolchain.Swift_3_0
I would also clear the whole Carthage build directory.

Thank you, forcing the Swift toolchain worked! It must have been a combination of a Carthage and Xcode issue.


Branching system in CONTRIBUTING.md

We should add a branching system, and an explanation of that branching system in our CONTRIBUTING.md, if you are not sure what is a branching system, go through this rust-pip: CONTRIBUTING.md
Hope this issue is helpful (:

Hi! Thanks for submitting this. I've been away from the computer for a holiday weekend. I'll check this out more this week.

Love the detail in rust-pip's CONTRIBUTING.md, but I'm wondering if it's needed here at this point.
We do link to the GitHub Flow docs which is probably robust enough at this point.
Don't get me wrong, this is definitely necessary in a future state where there might be a bunch of collaboration to organize. With that said, one important goal for us is to support the Python-to-Rust community engagement, and retaining a low bar to entry for new contributors here I think helps us work towards that.
Let's keep this open so that when we're there we can revist! 😄

Will revisit when this becomes an issue. GitHub documents this workflow sufficiently.


(spring-cloud-aws-jdbc) Using dbInstanceIdentifier fails after the failover due to readonly conversion

This is a bug report.
When using annotation based configuration (@EnableRdsInstance), specifying dbInstanceIdentifier of one of the instances (writer) of the cluster results with service failing to write anything to the database after the failover as the earlier writer becomes the reader now.

At my job, we use the cname.  Is that a possible solution here?

Yes, we could use the cluster URL (we also ended up doing the same).
But the documentation of the Spring Cloud JDBC, claims that the failover works while using @EnaleRdsIstance which isn't the case. Using DB Instance identifier would be nicer in case of using CloudFormation, we had one such use case, now we have to wait till the complete cluster launch and reference the cluster URL.

@prasadus92 can you please add more details about your stack, probably paste necessary stack configuration and annotation part ?


Error: define cannot be used indirect

I'm receiving this error in the latest version (2.69.0 on npmjs.com). This bug has been highlighted previously in https://github.com/request/request/issues/1920 but looks like the issue has never officially been patched.
A simple import request from 'request' is all takes to trigger the error in my application.
Downgrading to v2.65.0 has fixed the issue but this certainly is not a 'fix'.

I have exactly the same problem


Added the buttons

@aditya28sarin  Please make the pull request to the develop branch

@aditya28sarin  Please make the pull request to the develop branch

I had gone through your file, it seems like that, you picked up the code from master branch , kindly clone from develop branch.
@aditya28sarin

I had gone through your file, it seems like that, you picked up the code from master branch , kindly clone from develop branch.
@aditya28sarin


Upgrade to Angular 8

How can I write:
node: {       fs: "empty" },
in angular.json, if I have no webpack.config.json?
🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑
Please help us process issues more efficiently by filing an
issue using one of the following templates:
https://github.com/angular/angular-cli/issues/new/choose
Thank you!
🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑🛑

Hello, we reviewed this issue and determined that it doesn't fall into the bug report or feature request category. This issue tracker is not suitable for support requests, please repost your issue on StackOverflow using tag angular-cli.
If you are wondering why we don't resolve support issues via the issue tracker, please check out this explanation.


Bug causing shift in 3D translation fixed

The change in the object models caused by adapting the dataset to the SIXD format, led to a shift in translation and therefore induced the bad reported results.
Now if camera.yml is not found the matrix of the first frame of the testset is used instead.

Looks good to me! Thanks!


Outline for paper

Create a table of contents generally outlining the paper - these can be subsections with individual RMD files (make the whole thing easier to handle)

Added index file and related RMD files (each can have its own .bib


Add a simple cache strategy to the server

We already have streams being added data on mutation, we can intercept them with a exclusive consumer group to handle caching

This was a thought about caching requests to the graph but since everything runs on Redis it doesn't seem to make a difference for simple caching, so we can close this issue for now.


Update ammonite-compiler to 3.0.0-M1-26-cd78484b

About this PR
📦 Updates com.lihaoyi:ammonite-compiler from 3.0.0-M0-58-9ccdff7c to 3.0.0-M1-26-cd78484b
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.lihaoyi", artifactId = "ammonite-compiler" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "com.lihaoyi", artifactId = "ammonite-compiler" }
}]

labels: library-update, early-semver-pre-release, semver-spec-pre-release, commit-count:1

Superseded by https://github.com/almond-sh/almond/pull/1357


Choose an architecture for the model

We should agree on an architecture of the model that we'll train and use for this project before proceeding with #6 and #7.

I've found the model in this paper to be sensible. It resembles the architectures of other modern CNN models used for classification (blocks consisting of Convolution, BatchNorm, and ReLU). I think we can use it for this project. The paper claims 94% on CIFAR10 and I've already set up a Jupyter notebook and trained it for a bit. It achieved a little under 90% within 50 epochs.
Here is an overview:

Sounds good to me, can you maybe setup a pullrequest with this question so we know everybody agrees with your proposal?


'wt' commands don't exit/complete properly when run in a script

Environment
Windows build number: 10.0.18363.657
Windows Terminal version (if applicable): 0.9.433.0

Steps to reproduce

Create a cmd script that is meant to open windows terminal.
(e.g. wt ; split-pane -p "Ubuntu" ; split-pane -p "Ubuntu" -H)

Run the script by double-clicking on the file

Expected behavior
The script should run, open the configured windows terminal with 3-panes, and then the script should complete.
Actual behavior
The wt command does not seem to complete -- so both the cmd prompt and the newly created terminal are now open. The cmd prompt will close once the terminal window that was created is closed out.

Weirdly enough, this one is actually a cmd bug (not a terminal bug.) When a batch file runs an app execution alias, it refuses to return to the prompt.

I wouldn't call this a bug. CMD is required to work synchronously. Usually you'll call a lot of external tools (such as findstr.exe, robocopy.exe, chcp.com, etc.) from within a batch script. They have to complete before the CMD resumes with the next command.
There is the start command for asynchronous execution.

@DHowett-MSFT — the same seems to happen when you create PS profile function and run it, it refuses to return to the prompt.
Hope it helps!

Actually, yeah, this isn't a bug at all. CMD waits for GUI applications from batch scripts in all circumstances. Use start wt split-pane whatever instead.


Bump fastdoubleparser from 0.3.0 to 0.5.0 and fix calling code

This combines the change in https://github.com/deephaven/deephaven-csv/pull/75 with the code changes that fix the build.
If you'd rather add these changes to https://github.com/deephaven/deephaven-csv/pull/75 (I don't know how to do that) please let me know.

Need to wait on https://github.com/wrandelshofer/FastDoubleParser/issues/29

It looks like between 0.3.0 and 0.5.0, the structure of the JAR has significantly changed - ie, it's a multi-release jar; and I see we benefit by no longer needing the java 8 side to depend on 0.2.0.
https://github.com/wrandelshofer/FastDoubleParser/issues/25
This also means we should be able to get rid of fast-double-parser-8 project. I don't think we should do that in this PR - I'll do a follow-up after this gets merged in.

Superseded by https://github.com/deephaven/deephaven-csv/pull/81


SSE3 functions

Per https://software.intel.com/sites/landingpage/IntrinsicsGuide/#techs=SSE3

[x] _mm_addsub_pd
[x] _mm_addsub_ps
[x] _mm_hadd_pd
[x] _mm_hadd_ps
[x] _mm_hsub_pd
[x] _mm_hsub_ps
[x] _mm_lddqu_si128
[x] _mm_loaddup_pd
[x] _mm_movedup_pd
[x] _mm_movehdup_ps
[x] _mm_moveldup_ps

SSE3 support is complete as of 464c019a2ec24d98586b47deefa509d86e549635


Resize Sensor on Firefox and IE 11

Hi. Great plugin. I'm using sticky-sidebar.min.js.
Everything seems to be working fine in Chrome, except I'm experiencing a little scroll flicker as the .inner-wrapper-sticky div changes from fixed to relative when reaching the end of the container element.
On the latest version of Firefox (55.0.3), the resize sensor does not seem to be working properly. I went ahead and tested this on the basic example of the plugin - https://abouolia.github.io/sticky-sidebar/examples/basic.html. Upon adding content to the sidebar and scrolling to bottom of the page, the sidebar crosses over into the footer.
Also, in IE 11 (11.1593.14393.0), the console is showing a 'SCRIPT445: Object doesn't support this action' error, in regards to CustomEvent initialization.
Please advise. Thanks!

Jus wanted to chime in that I got the same error ('SCRIPT445: Object doesn't support this action' in the eventTrigger() function) on IE10.

I know have delayed to reply on some issues because i was work on paid project so excuse me, after some time of debugging i decided to change the whole idea of resize sensor because does not work well on internet explorer versions so the day after tomorrow will be some big commits that will fix this issue. Regards.

This issue is fixed and other you can what have been done from here https://github.com/abouolia/sticky-sidebar/releases/tag/3.2.0. Regards.


LE Audio: unicast_server listen incorrect behavior

Is your enhancement proposal related to a problem? Please describe.
In stream.c we have the following
#if defined(CONFIG_BT_AUDIO_UNICAST_SERVER)
static struct bt_audio_stream *enabling[CONFIG_BT_ISO_MAX_CHAN];

static int bt_audio_stream_iso_accept(const struct bt_iso_accept_info *info,
				      struct bt_iso_chan **iso_chan)
{
	int i;

	BT_DBG("acl %p", info->acl);

	for (i = 0; i < ARRAY_SIZE(enabling); i++) {
		struct bt_audio_stream *c = enabling[i];

		if (c && c->ep->cig_id == info->cig_id &&
		    c->ep->cis_id == info->cis_id) {
			*iso_chan = enabling[i]->iso;
			enabling[i] = NULL;

			BT_DBG("iso_chan %p", *iso_chan);

			return 0;
		}
	}

	BT_ERR("No channel listening");

	return -EPERM;
}

This is basically implementing the same listening implementation that ISO has, and the purpose of it is to ensure that when bt_iso_server.accept is called, we can return with a CIS.
This implementation has a few issues:

The implementation uses bt_audio_stream when listening, but there is nothing handling the case where two bt_audio_stream share the same CIS.
The implementation uses CONFIG_BT_ISO_MAX_CHAN to determine how many bt_audio_stream that are listening. The maximum number of bt_audio_stream we actually can listen to, would be ASE_COUNT * CONFIG_BT_MAX_CONN, which can easily be much higher.
We do not have any verification that limits the number of ASEs to how many ISO channels we support

Describe the solution you'd like
For 1) we can probably use the bt_audio_iso instead of bt_audio_stream, as we can then let ASCS handle the couple of audio streams to the same CIS.
For 2) we can either change
static struct bt_audio_stream *enabling[CONFIG_BT_ISO_MAX_CHAN];

to
static struct bt_audio_stream *enabling[ASE_COUNT * CONFIG_BT_MAX_CONN];

or find another way to restrict the number of streams that we are listening to.
For 3) we need to find a way to restrict the number of ASEs to the number of ISOs we support, or perhaps rather the number of bt_audio_streams we want to support.
Describe alternatives you've considered
N/A
Additional context
N/A

@MariuszSkamra Are you intending on fixing this?


Help wanted in SIG Usability

Provide the actual tweet content between the commented colons

SIG Usability is currently working on a jobs to be done study and an effort to define universal personas for the upstream project. Welcoming user researchers, designers and new contributors to help. More info in: https://github.com/kubernetes/community/tree/master/sig-usability.

@sandipanpanda we aren't tweeting this now because the first part of the tweet isn't clear yet, we need more information from Sig-Usability.

/close


fix: return bearer header when using openai

fix the related issue: https://github.com/ChatGPTNextWeb/ChatGPT-Next-Web/issues/3628

You have defined the local variable authValue on line 13 and line 20 respectively, and then used the variable authValue on line 69 below. Now there is an issue with deployment.

vercel build error：

Should the scope of the variable authValue be elevated?

You have defined the local variable authValue on line 13 and line 20 respectively, and then used the variable authValue on line 69 below. Now there is an issue with deployment.

vercel build error：

Should the scope of the variable `authValue` be elevated?

Pull the code again, it's ready.


isChi leads to R to crash

When running runCSSR() with isChi set to TRUE, R encounters a fatal error. The error seems to go away when time series is long enough (say, >30).
When running CSSR with the flag -ch, the following error (and related ones) was encountered:
"a too large, ITMAX too small in continued fraction gamma function"
I suspect that the crash may be avoided if nerror() in Test.cpp is handled better within the Rcpp framework. For now, it is best to avoid performing chi-square test altogether (i.e., leaving isChi=FALSE).

This is probably related to one of the known issues of the C++ source code...


Write docs for the @frontity/yoast package

Code Pull Request: https://github.com/frontity/frontity/pull/548
Feature discussion: https://community.frontity.org/t/support-for-yoast-plugin-rest-api-fields/2626

The documentation URL linked in the README file of the package is this one (it should be created, doesn't exist yet): https://docs.frontity.org/api-reference-1/frontity-yoast
This package has two options: transformLinks and onlyInSSR. Both are explained in theTSDocs written in types.ts.

BTW, I think it is very important that we don't forget to mention this in the docs: https://community.frontity.org/t/support-for-yoast-plugin-rest-api-fields/2626/29?u=luisherranz

Please add a link to the docs in the package readme once they are available: https://github.com/frontity/frontity/blob/dev/packages/yoast/README.md

Please add a link to the docs in the package readme once they are available: https://github.com/frontity/frontity/blob/dev/packages/yoast/README.md


Inquiry About GPU of training

Hello! Thank you for your excellent work. I would like to inquire about the GPU resources for training Cliport. When the batch size is set to 1, approximately how much GPU memory will be used? Also, how long does it take to train for 600k steps? Thank you!

Hi, thanks for your interests in our work. It's not suggested to use batch size of 1 since it would be very slow for training. In our case, we use 2 A6000 GPUs (VRAM=48GB) with batch size of 14, and it took around 12 days for training the primitive.


base-wxwidgets: New bootstrap project.

I hope I did it correctly. 😅
Notes: builds on MSYS2/MinGW-w64, with Corrade/Magnum 2019.01 and wxWidgets 3.0.4 from the MSYS2 repos. The 3.1 code path works in another project of mine, so it should "just work" too.
Anyway, feedback and reviews are welcome.

Great, it just built on the first attempt :tada: Merged as 44ec5f38d7496b5bc957b1b3df61c2b1866e362b, thanks a lot!


sort file list by date

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

1 of 2 (50.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.03%) to 82.107%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

sis_provisioner/views/api.py
1
2
50.0%

Totals

Change from base Build<PHONE_NUMBER>:
0.03%

Covered Lines:
569

Relevant Lines:
693

💛  - Coveralls