parent loader does not refresh on redirect in action

This shows that a loader does not refresh loader data in parent route when there is a redirect in a loader action.
It does work as expected if there is no redirect in the action.
Related to: #1616

Thanks for raising this PR. I have this bug in a few places across a couple of remix apps. Hopefully it's not too much work to get it merged.

I believe this is fixed in #2370

@kiliman I am not sure if that PR is in the current version (1.3.3), if it is the issue is still persisting.

That change is in the latest release and the issue is still there.

@nicksrandall Could you please rebase onto latest dev & fix conflicts so this PR only contains related changes?

@MichaelDeBoey done

#2370 was merged into dev on March 21st. However, it hasn't been merged into main for release 😢
I was hoping it would be in 1.3.4.

Closing this one as #2370 is merged (like @kiliman mentioned)

#2370 was merged into dev on March 21st. However, it hasn't been merged into main for release 😢
I was hoping it would be in 1.3.4.

it should be - we checkout a "release" branch prior to merging to "main" (https://github.com/remix-run/remix/commits/release/v1.3.4?after=e6e7dc81cbe60e9a2d82751007efbfb4475638a4+69&branch=release%2Fv1.3.4)

The error still exists. IMO, we shouldn't close this issue until the test case passes. The only reason I bring this up is because another issue has already been incorrectly closed so I want to be sure this doesn't fall through the cracks.

Can we please reopen this PR? Thanks!

Can we please reopen this PR? Thanks in advance! CC: @mcansh @ryanflorence

I merged 1.3.4 into this branch locally and the test case still fails

Thanks @mcansh. FWIW #1616 should also be re-opened.

@nicksrandall Thanks for the test case!  This should be fixed by https://github.com/remix-run/remix/pull/2838 so if you wouldn't mind giving that a shot once the next release goes out and then we can close this if all looks good?

Closed by #2838


[cw310] Connect all pads

This commit prepares the cw310 RTL for shared use with hyperdebug by connecting everything (and nominally aligning some fixed functions with the hyperdebug use case).
--
This adds all the pads that were previously removed, including PMOD
connections for a UART, I2C, and PWM.
The LEDs and DIP switches have been moved, and the common pinmux
function no longer automatically configures GPIOs. Adjust tests that use
the GPIOs to set up their own pinmux config and map them to IOA2-IOA8
only.

Moved pins for original:
IOA0 : M26  -> AA24 (LED -> SAM UART0)
IOA1 : M25  -> AB22 (LED -> SAM UART0)
IOA2 : M24  -> N17  (LED -> PMOD1 UART/GPIO)
IOA3 : M19  -> T22  (LED -> PMOD1 UART/GPIO)
IOA4 : L25  -> R23  (LED -> PMOD1 UART)
IOA5 : K26  -> R26  (LED -> PMOD1 UART)
IOA6 : L24  -> R25  (LED -> PMOD1 GPIO)
IOA7 : K25  -> P23  (LED -> PMOD1 I2C)
IOA8 : U9   -> T23  (DIP -> PMOD1 I2C)
IOB0 : V7   -> F12  (DIP -> Aux SPI flash)
IOB1 : V8   -> E11  (DIP -> Aux SPI flash)
IOB2 : W9   -> A15  (DIP -> Aux SPI flash)
IOC6 : D8   -> M21  (USERIOB -> PMOD2 PWM/GPIO)
IOC9 : D10  -> M22  (USERIOB -> PMOD2 GPIO)
IOC10: B9   -> N19  (USERIOB -> PMOD2 GPIO)
IOC11: A9   -> P26  (USERIOB -> PMOD2 GPIO)

Added pads:
IOB3 : F14  (Aux SPI flash)
IOB6 : U9   (DIP)
IOB7 : V7   (DIP)
IOB8 : V8   (DIP)
IOB9 : W9   (DIP)
IOB10: V9   (DIP)
IOB11: W8   (DIP)
IOB12: W10  (DIP)
IOC12: P24  (PMOD1 GPIO)
IOR5 : V11  (DIP)
IOR6 : M26  (LED)
IOR7 : M25  (LED)
IOR8 : M24  (LED)
IOR9 : M19  (LED)
IOR10: L25  (LED)
IOR11: K26  (LED)
IOR12: L24  (LED)
IOR13: K25  (LED)

@alphan @vogelpi Can you confirm whether I have connected the pins / GPIOs needed for the SCA flow? Thanks!

@alphan @vogelpi Can you confirm whether I have connected the pins / GPIOs needed for the SCA flow? Thanks!

Thanks @a-will! @vogelpi would you mind taking a look? I won't be able to verify these locally since I'm working remotely this week.

Thanks for the PR @a-will . The source code looks good to me but to be sure I would like to quickly run this on the FPGA and do a test capture. However, I am not able to do this before Thursday. I hope this is okay for you.

This commit prepares the cw310 RTL for shared use with hyperdebug by connecting everything (and nominally aligning some fixed functions with the hyperdebug use case).
--
This adds all the pads that were previously removed, including PMOD connections for a UART, I2C, and PWM.
The LEDs and DIP switches have been moved, and the common pinmux function no longer automatically configures GPIOs. Adjust tests that use the GPIOs to set up their own pinmux config and map them to IOA2-IOA8 only.

@a-will based on our offline discussion yesterday, should we document anywhere the delta between the hyperdebug variant and the more generic variant shown here?

This commit prepares the cw310 RTL for shared use with hyperdebug by connecting everything (and nominally aligning some fixed functions with the hyperdebug use case).
This adds all the pads that were previously removed, including PMOD connections for a UART, I2C, and PWM.
The LEDs and DIP switches have been moved, and the common pinmux function no longer automatically configures GPIOs. Adjust tests that use the GPIOs to set up their own pinmux config and map them to IOA2-IOA8 only.

@a-will based on our offline discussion yesterday, should we document anywhere the delta between the hyperdebug variant and the more generic variant shown here?

Documenting the purposes and capabilities of each bitstream sounds like a good idea, but I don't think I'd do it as a delta, no. That presupposes that this actually is a "generic" variant and the "standard" one. In reality, this variant is primarily for demos with flashing LEDs and maybe an SCA flow, and it just happens to be able to run some limited set of tests. Because the hyperdebug variant connects almost all pins to headers instead of fixed functions on-board, it is the more general one that can be used for a wider variety of tests.
Does that make sense?

This commit prepares the cw310 RTL for shared use with hyperdebug by connecting everything (and nominally aligning some fixed functions with the hyperdebug use case).
This adds all the pads that were previously removed, including PMOD connections for a UART, I2C, and PWM.
The LEDs and DIP switches have been moved, and the common pinmux function no longer automatically configures GPIOs. Adjust tests that use the GPIOs to set up their own pinmux config and map them to IOA2-IOA8 only.

@a-will based on our offline discussion yesterday, should we document anywhere the delta between the hyperdebug variant and the more generic variant shown here?

Documenting the purposes and capabilities of each bitstream sounds like a good idea, but I don't think I'd do it as a delta, no. That presupposes that this actually is a "generic" variant and the "standard" one. In reality, this variant is primarily for demos with flashing LEDs and maybe an SCA flow, and it just happens to be able to run some limited set of tests. Because the hyperdebug variant connects almost all pins to headers instead of fixed functions on-board, it is the more general one that can be used for a wider variety of tests.
Does that make sense?

yeah that sounds good.  To be honest I'm not sure where said documentation should go, but I'm sure you'll find a good place :)

I just tested this on the FPGA. SCA captures don't work with this PR but they were also broken before. The binary can be loaded over SPI but the connection between the target and the scope (over simple serial) is somehow broken. However, it seems this already the case before this PR so I think it's okay to merge this PR either way.

I just tested this on the FPGA. SCA captures don't work with this PR but they were also broken before. The binary can be loaded over SPI but the connection between the target and the scope (over simple serial) is somehow broken. However, it seems this already the case before this PR so I think it's okay to merge this PR either way.

Thanks for testing that!
Are you referring to the UART going from the FPGA to the ChipWhisperer connector?
# ChipWhisperer UART
set_property -dict { PACKAGE_PIN AE25 IOSTANDARD LVCMOS33 } [get_ports { IOB4 }]; #J14 PIN 10 CWIO_IO1 - OpenTitan UART1 RX
set_property -dict { PACKAGE_PIN AF25 IOSTANDARD LVCMOS33 } [get_ports { IOB5 }]; #J14 PIN 12 CWIO_IO2 - OpenTitan UART1 TX

Ah, I see the "simple_serial" code and how the UARTs are allocated now. That portion of the design hasn't changed in this PR, so I'll go ahead and merge.
It's not clear why it has been broken, though. A problem for another day...


[WIP] Add connection resume, client state tracking, robust reconnect logic, reconnecting hooks, more

By submitting this pull request you agree that all contributions to this project are made under the MIT license.
Issues

While in a discussion on the discord, it became apparent that ReactPy was unusable for any application where dynamic scaling is required. For example, in cases where Azure/GCP will start/stop workers for dynamic load balancing. As a result this, users will be disconnected randomly and then would have the state of the ReactPy components reset.
There's also other issues I encountered while building this. Please see my comments (will be added soon) which walk through this very large PR. The intent is not to have this PR merged in all at once, rather, it is a guide to subsequent smaller PRs that can properly add tests, etc. I do not have the time to properly land this PR, so I am asking for help.
Solution

The solution to the problem was to have the client store the state that's used for rendering components. The theory is that if the client state matches the server state, then things should work just fine.
In reality, there was some challenges to get to that. The first was that IDs of components and events were random instead of deterministic, so this needed to be changed. Now the IDs are based on their patch path.
The next concern is security. While the state isn't obvious to most users, without proper security a client could manipulate variables that an author would have assumed could only be set by the server. An example might be is_admin or something, or maybe the user ID of user viewing the page. Another issue is that server secrets might leak to the client if someone isn't careful.
For security, all data given a sha-256 hash as a signature. The server will reject a state variable if it doesn't match the hash. Users are given a personal salt, which they must provide to the server upon reconnection, and the server has a secret "pepper" that is added to make things more difficult. I wasn't satisfied with this, so I added OTP codes that will change, by default, every 4 hours. The OTP codes use site-packages directory's contents (specifically, the parent directory of where reactpy is installed) and the create times to generate a random secret that feeds into the SHA-1 function that generates them. The OTP codes (right now, in the past, and in the future) are added to the hash just to make it that much harder.
All state values have a key that is derived from the file and line number. To avoid leaking this information via brute force, the key is a sha-256 that has about half the bits cut off, making it difficult to recreate.
The client behavior has been revamped. It now will always reconnect, has improved reconnect behavior, and also will disconnect on idle activity (default is 4 minutes). When the user moves the mouse or scrolls, it will reconnect. There's also hooks for when it is reconnecting and has successfully reconnected. The default behavior is to gray out the page and display a spinning pipe character. It's not great.
The performance impact appears to be negligible.
Checklist
The checklist will be for each individual feature that should be a separate PR. TBD
Work items remaining (this PR):

[x] Add serialization for datetime types such as timezone and timedelta. This logic is currently in Heavy Resume but makes sense to just give to everyone.
[x] Fix the server outrunning the client by moving the message handlers out of the tsx file and into the javascript file
[x] Comment on the PR on everything

Extracted Issue List

[ ] - A - bug fix for when server would return "layout-update" before the client was ready.
[ ] - B - bug fix for inconsistent script rendering that resulted in double execution of scripts. Scripts also always are returned to the DOM for user inspection rather than executed directly.
[ ] - C - Message updates
[ ] - D - Have client keep track of state variables (the big one)
[ ] - E - add ability to debug messages sent and received on the client
[ ] - F - Add idle disconnect time to client
[ ] - G - Add connection timeout so that if you connect to a bad node the client doesn't stay stuck to it
[ ] - H - Improve message types in client
[ ] - I - switch to orjson for faster serialization
[ ] - J - Bug fix for corrupted hook state - change hook state to a contextvar
[ ] - K - Usage of slots
[ ] - L - add priority queue to component rendering - not functioning as expected currently
[ ] - M - messages should be a class and not a typed dict
[ ] - N - Use of protocols (substantial performance and usability issues)
[ ] - O - don't use hasattr in the manner identified

This is definitely way too much within one PR. Can you break this into smaller PRs?

Assuming this headache of mine doesn't turn into something worse, I'll add comments tomorrow. I don't have the capacity to properly break this out, create / update tests, etc for the changes and I'm asking the community for help to land these features. This PR is intended to be a starting point and is not intended to be merged.

Also just to re-iterate what I said over discord, I've only experienced WS disconnections under high load when ReactPy is not using a BACKHAUL_THREAD.
A potential alternative to client-side state storage is simply migrating that implementation to core.

It's not clear to me how backhaul threads are equivalent to this. Do you have a doc that explains the architecture? My impression from your description was that it helped with stability in django but it wouldn't help if your node count was scaled down and you still had active connections on the terminated node (same with a client's internet disconnecting / reconnecting).
I think having the client manage their own state is a perfect solution. It very much simplifies the infrastructure and reduces costs. There's a slight delay due to the copy of data but since you're reconnecting there's going to be a delay anyways.

My suggestion on approach:

Keep the javascript client updates and fixes as a single PR, even though it resolves multiple issues. It either needs to be backwards compatible or could merge into the PR that does the server side of Issue D
Some of these are small but big wins. I would do them first. For example, the use of protocols could at the very least fix the performance problem they cause, which is only a couple lines of code
Some are worth discussing before action. The priority queue sounds good but doesn't actually work as expected. The render times are also really small so the value of a priority queue is questionable. It might be useful in the future though.
Measure using a tool like py-spy or something to get performance bottlenecks rather than making any assumptions. I thought the sha256 calls would show up somewhere but they, and their parent functions, haven't.

Example usage that supports Pydantic / SQLModel objects:
def default_serializer(obj: Any) -> Any:
    if isinstance(obj, BaseModel):
        return obj.dict()
    raise TypeError(f"Object of type {obj.__class__.__name__} is not JSON serializable")

state_recovery_manager = StateRecoveryManager(
    serializable_types=[
        TemporaryUser,
        QAMessage,
    ],
    pepper="pepper",
    default_serializer=default_serializer,
)

configure(app, Main, Options(head=head, cors=cors_options), state_recovery_manager)

If you want to see this in action, it is live on heavyresume.com
Inactivity timeout is set to 4 minutes. You can see it happen in the console. If you scroll down and let it time out, you'll notice that it doesn't regenerate the view on reconnect. Moving the mouse or scrolling triggers reconnection.
Thanks!

One thing I'd like to bring attention to - if the layout logic is rewritten, please leave some means to re-render all components of a certain type. Next best thing is some means to trigger a whole page re-render from the client state. The use case would be hot reloading. Right now I can successfully use jurigged to hot reload - however unless the component has a toggle or something to force a re-render, I have to reload the page.

This linked PR fixes a bug where use_effect(my_func, []) was rerunning on the next reconnection. The fix from that PR applies to this one.
https://github.com/JamesHutchison/reactpy/pull/16

After using the heavy stack for many months, here's the known issues that are currently unresolved and may be attributed to my changes:

pokey loading on slow connections - seems to be caused by layout updates requiring confirmation from the client before moving forward.
imperfect connection recovery - connection recovery for larger states always fail to rebuild in time resulting in destructive reconstruction that can result in state loss for text boxes that have unsaved changes
input hell - inputs and components that have matching DOM paths aren't recreated unless the key changes or the DOM structure leading up to them changes. This means, for example, if you change a selected list item, the inputs won't update even though the parameters into the component do
incomplete component updates - in some cases the render order of components results in child components not rendering after the parent finishes. For example, a parent triggers a child render, the parent is then rendered, perhaps due to an event or state change, such that the child needs a rerender, but the child is marked as having already rendered and does not render again.

I'm pretty sure the input hell stems from the change that gives state a deterministic target based on the DOM path. This change was needed to support state rebuild.
The rest may be existing ReactPy issues.


fix: set the correct KIB version ami tag

What problem does this PR solve?:
Sets the correct KIB version in the ami tag. Previously this was always defaulting to 0.0.1 from the fallback value in pkg/packer/manifests/aws/packer.json.tmpl.
Which issue(s) does this PR fix?:

https://jira.d2iq.com/browse/D2IQ-NUMBER

Does this PR introduce a user-facing change?:

Fix: The correct Konvoy Image Builder version will be set in the resulting AMI tags.

I happened to notice this in the output while running, and it was an easy fix:
Previously:
==> centos-7.9: Creating AMI tags
    centos-7.9: Adding tag: "distribution_version": "7.9"
    centos-7.9: Adding tag: "kubernetes_version": "1.21.6"
    centos-7.9: Adding tag: "containerd_version": ""
    centos-7.9: Adding tag: "image_builder_version": "0.0.1"
    centos-7.9: Adding tag: "kubernetes_cni_version": ""
    centos-7.9: Adding tag: "build_timestamp": "1641446236"
    centos-7.9: Adding tag: "distribution": "CentOS"
    centos-7.9: Adding tag: "build_date": "2022-01-06T05:17:16Z"
    centos-7.9: Adding tag: "source_ami": "ami-0686851c4e7b1a8e1"

Now:
==> centos-7.9: Creating AMI tags
    centos-7.9: Adding tag: "kubernetes_cni_version": ""
    centos-7.9: Adding tag: "source_ami": "ami-0686851c4e7b1a8e1"
    centos-7.9: Adding tag: "distribution": "CentOS"
    centos-7.9: Adding tag: "build_date": "2022-01-06T07:03:36Z"
    centos-7.9: Adding tag: "containerd_version": ""
    centos-7.9: Adding tag: "distribution_version": "7.9"
    centos-7.9: Adding tag: "image_builder_version": "v1.5.0-27-gd92dd744a92e"
    centos-7.9: Adding tag: "kubernetes_version": "1.21.6"
    centos-7.9: Adding tag: "build_timestamp": "1641452616"

There are other shenanigans with the ansible -> packer vars that need to happen to get the containerd and cni versions to be filled in.


GNMI 1.4 Optic Temperature Sensor Test

Added the following changes
GNMI Feature Request
openconfig-platform:components/component/state/temperature/instant
openconfig-platform:components/component/state/temperature/avg
openconfig-platform:components/component/state/temperature/min
openconfig-platform:components/component/state/temperature/max
openconfig-platform:components/component/state/temperature/min-time
openconfig-platform:components/component/state/temperature/max-time
openconfig-platform:components/component/state/temperature/interval

Pull Request Functional Test Report for #2697 / b30bf90252d4d883ac308078baca178857f5539b
Virtual Devices

Device
Test
Test Documentation
Job
Raw Log

Arista cEOS

gNMI-1.4: Telemetry: Inventory

Cisco 8000E

gNMI-1.4: Telemetry: Inventory

Cisco XRd

gNMI-1.4: Telemetry: Inventory

Juniper ncPTX

gNMI-1.4: Telemetry: Inventory

Nokia SR Linux

gNMI-1.4: Telemetry: Inventory

Openconfig Lemming

gNMI-1.4: Telemetry: Inventory

Hardware Devices

Device
Test
Test Documentation
Raw Log

Arista 7808

gNMI-1.4: Telemetry: Inventory

Cisco 8808

gNMI-1.4: Telemetry: Inventory

Juniper PTX10008

gNMI-1.4: Telemetry: Inventory

Nokia 7250 IXR-10e

gNMI-1.4: Telemetry: Inventory

Help

Hi @mastarkey, Please can you update the label for this PR. Also I don't see these OC paths requested. Is there a feature request for this?

Please can you rebase?

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Warning: This coverage report may be inaccurate.
This pull request's base commit is no longer the HEAD commit of its target branch. This means it includes changes from outside the original pull request, including, potentially, unrelated coverage changes.

For more information on this, see Tracking coverage changes with pull request builds.
To avoid this issue with future PRs, see these Recommended CI Configurations.
For a quick fix, rebase this PR at GitHub. Your next report should be accurate.

Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 54.484%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
1847

Relevant Lines:
3390

💛  - Coveralls


Middleware not applied correctly when path contains $

What version of Hono are you using?
4.1.0
What runtime/platform is your app running on?
Bun
What steps can reproduce the bug?
I understand this might be an edge case, but it caused an actual security risk in my app. When I create a nested router for the route /$$$ the middleware for * are not running. This seems to be specific to the route name containing dollar signs.
Repro:
import { Hono } from "hono";
const app = new Hono();
app.get("/", (c) => c.text("Hono!"));
const userApp = new Hono();
userApp.use("*", (c, next) => {
  console.log("User middleware");
  return next();
});
userApp.get("/:id", (c) => c.text("User " + c.req.param().id));
userApp.get("/", (c) => c.text("User"));
app.route("/$$$", userApp);
export default app;

What is the expected behavior?
The middleware logging "User middleware" is not executed when accessing /$$$ or /$$$/123
What do you see instead?
The middleware should log "User middleware" on all routes of /$$$
Additional information
No response

Hi @danielbuechele
Thanks for the issue. This seems to be a bug in routers.
Hi @usualoma
This unexpected behavior will occur when it uses RegExpRouter or PatternRouter. Could you take a look?

Hi @danielbuechele
cc @yusukebe
Thanks for the report.
I believe #2375 will fix this issue!

I updated to<EMAIL_ADDRESS>and can still reproduce the issue as described in my initial report.

@danielbuechele
Oh, sorry, you're right. It wasn't fixed yet. Please wait a moment while I fix it.

Sorry, #2375 fixed the match to handler, but not enough to fix the match to middleware. I think #2411 will fix it completely.


Just says installing dependincies

Describe the bug
all i get is this then i get a error due to this error ive ran out of credits

Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-q4dkkd
Steps to reproduce
I ask it to build something then when installing dependincies it just stays on that then get a error ask it to fix it does the same installs it again then i get a error
Expected behavior
Its my first time using it so im guessing after installing that it will all work
Screen Recording / Screenshot

Platform
Browser name = Safari
Full version = 18.0.1
Major version = 18
navigator.appName = Netscape
navigator.userAgent = Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0.1 Safari/605.1.15
performance.memory = undefined
Username =<EMAIL_ADDRESS>Chat ID = b5e1f5bb241d

Additional context
No response

I want to upgrade but I first want to see it works before upgrading

this is the error then when i say fix it installs then then just get the same thing

@theaisannin Bolt.new does not currently support Safari due to limitations in the browser that do not support WebContainers (the core technology that powers Bolt). We are adding a banner to indicate this soon, but in the meantime, please switch to Google Chrome or another Chromium based browser.
If this does not resolve your issue, please subscribe to #2021 for troubleshooting steps and updates as we are investigating additional causes of this error there!


DEVELOPERS: posting multiple photos

New feature of instagram:
http://www.imore.com/you-can-include-multiple-photos-instagram-post-heres-how
Any ideas on API?

'media_type': 8, 'carousel_media'

https://github.com/mgp25/Instagram-API/blob/master/examples/uploadAlbum.php

@ppleskov - can you add this to API class?

Ill try to test this method

Done by @sudoguy


git integration to find poor performance codes' author

After identifying poor performed codes, source maker could find codes's author with the integration of git or svn. After find the author, one could send email to inform him/her about the file name, line number, code snipped and etc.

Thanks for the suggestion. Currently for you to view any advice you have to be looking at the source code which has the advice. I'm aware this isn't ideal as no one is consistently looking through all of their code. My plan for fixing this was to use the event log as a persistent collection of all the advice found throughout the entire application. I can see too how that solution might not be ideal as then the onus would be on developers for check their event logs more consistently.
It's more than possible to determine who wrote the source code for some poorly performing code. I think my main issue with only emailing/notifing the author is that there could be times when the author is not the ideal person to solve the issue (i.e. the developer who wrote the code is on vacation/quit/etc). In those cases it wouldn't be ideal to send the notification and then forget about it. Maybe a solution where the author is notified and then in the event log you can see who the problem has been assigned to and how long it's been assigned to them. That way other developers could tell if something slipped through the cracks.
What do you think?

Using event log or some log system is good. Since there are many 3rd party log management tools, for example Elastic search(heavy one) or MeiliSearch (light one).  The log managemnt tool could aggregate/analyze events and logs to make meaningful report tailored for specific customers.


Security design to support the UI and Admin Server

Signed-off-by: Graeme McRobert<EMAIL_ADDRESS>

@mstruk Do you have any more comments to this? Otherwise I think it will be ready to merge.

@gmcrobert Could you have a look at the comments from Marko? That seems to be the only thing left before merging this. Thanks.

@scholzj I have responded to the comments and made some minor adjustments to the document to take into account some of the comments that were made.

Thanks for the PR. It is not merged.


Added proprietary driver warnings

Added proprietary driver warnings
Added checksums to Cargo lock file (I believe it's a new feature from the most recent Cargo)

Coverage remained the same at 64.209% when pulling 03d3a69aa9902ba96ddc69af1363c554c35f3f29 on proprietary-warn into 21bd2c42e6c93f21d69b14f68e96cdcf9d06f260 on master.


Unable to shutdown one uWS::App while others are running

Hi, perhaps I'm doing something wrong, but I've observed if I have multiple uWS::App's, I can not shut just one down, I needed to trigger us_listen_socket_close on each for either to exit their loop.
uwebsockets_many_apps.cc.txt
I've attached a small repro-case, where setting TRIGGER_BOTH_APP_CLOSURES_BEFORE_BLOCKING_ON_EITHER to false shows the case where it blocks forever, and true where it successfully exits by triggering both before blocking on one being done.

Actually, I realized I had forgotten to check the case where I need to defer rather than call this from another thread. Will try that and report back.

So the summary is using uWS::Loop::defer fixes the issue.

Every thread has 1 loop, regardless of how many Apps that thread has.


How To Use “array of objects whith array” In “React-Redux-Form”

I want to have variable of model structured like this:
specialCondtions: [
   { terms: [ {obj1a},{obj2a},... ] }
   { terms: [ {obj1b},{obj2b},... ] }
   { terms: [ {obj1c},{obj2c},... ] }
   { terms: [ {obj1d},{obj2d},... ] }
]

So something like array of arrays. The problem is that at the begging I have only empty array in model
specialCondtions: []
Now first obj1a comes form user input. I can not use this:
let obj={terms:[]}
obj.terms.push(obj1a)
dispatch(actions.push("model.specialCondtions",obj))

because I get following error:
Uncaught Error: Actions must be plain objects. Use custom middleware for async actions.
This is not async , so I am probably doing something wrong.

You probably don't have redux-thunk set up in your middleware. That is required for doing anything besides a simple actions.change.

Hello,
Sorry I was probably following wrong guide:
(http://davidkpiano.github.io/react-redux-form/docs/guides/quickstart.html)
as it says that : "redux-thunk is no longer required for versions 1.3.0 and higher. If you are using a previous version, make sure to install it as well."
and now I found out here is also guide:
https://davidkpiano.gitbooks.io/react-redux-form/
Which one is actual or both?

Ah i see its required for anything besides actions.change

Yes, that's correct. And it is pretty clear in the most up-to-date docs here: http://davidkpiano.github.io/react-redux-form/docs/api/actions.html . However, I'll update the quickstart docs.


Integrate windows_user_privilege in chef core

Core Chef Resource Checklist
Before suggesting a resource for inclusion please make sure your suggestion meets these criteria for resources built into Chef:

[ ] Automates an operating system component that ships by default on systems such as authentication, raid, disk partitions, firewalls, containers, or virtualization systems.
[ ] Does not attempt automate 3rd party applications such as database, web, or application servers, which are best suited for cookbooks due to their fast moving nature.

Describe the resource:
The windows_user_privilege adds the principal (User/Group) to the specified privileges (such as Logon as a batch job or Logon as a Service).
Why should this be included out of the box?:

Automating windows servers frequently requires that you edit account privileges, to setup services or schedule tasks for instances.
When you want to setup a simple cron task on linux you don't need to include the "linux" cookbook, it's a pain to have to include "windows" on windows for such a trivial thing.
The base libaries used in the implementation are located in Chef core, it would make sens to have the resource implementation at the same place
Windows Services reimplement this resource to grant SeServiceLoginRight, it could be refactored to take advantage of this new resource.

What operating systems would it run on?
Windows only
Current cookbook implementation:
https://github.com/chef-cookbooks/windows
Can We Help You Implement This?:
I'm OK to move the code as it, this is trivial, but should I:

change the copyrights
add chefspecs (there is none in in windows cookbook)

@Annih we wouldn't remove any copyrights when copying code across, only add additional ones if we made significant changes are part of the move. that said, I don't see a copyright on that file in the windows cookbook, just an author line which I would treat the same way.
We should add a functional test (spec/functional/resource) though.
I wondered a bit about adding privilege property to the existing windows_user resource.
windows_user  'Administrator' do
  privilege %w(SeBatchLogonRight SeServiceLogonRight)
  action :modify
end

Although the existing actions wouldn't give you the ability to add or remove specific privileges, only explicitly set all of them.

This is in progress with #9279

This is merged into master for Chef Infra Client 16


[5.2] Allow the shuffle() method to be seeded

We often need to display items in a random order, but only random on a daily basis i.e. the order is static for a day, then the following day, the order changes.
This PR adds the ability to seed the shuffle() method.

Why not just use the random_int function. It has better performance than mt_rand.

random_int isn't seedable is it?

random_int isn't seedable is it?

Why is that needed?

Oh, sorry. I get what you're doing now! Looks fine. :)


Faint text + wff and class definitions don't work

I like your website @tirix , I found myself using it more than the original Metamath one. I only have two issues:

I find the main text hard to read. If I zoom in it seems to be black, but from far away it appears as a very faint grey, could you make it darker (or thicker) ?

All wff and class definitions that I visited don't appear, it always shows Could not format assertion. Unkown statement

I did a few changes this weekend and among others, I've made the text darker, and enabled the display of axioms and symbol definitions like ~wn.
The site is now accessible at http://metamath.tirix.org/mpeuni/wn.

Nice! The text looks better now and symbols definitions are working.
There are some other issues I noticed:
All links from  http://metamath.tirix.org/index.html seems to be broken. For example if I click http://metamath.tirix.org/mpeuni/mmset.html it gives a 404.
http://metamath.tirix.org/mpeuni/bm1.1 The hypothesis bm1.1.1 doesn't show. Is it because the non-freeness symbol is missing?
http://metamath.tirix.org/mpeuni/toc?ref=61 This webpage is empty, maybe it doesn't render tables?
http://metamath.tirix.org/mpeuni/ax-mp If I click on min or maj then it gives a 404. More generally this issue appears when I click on hypotheses. Are they not intended to be clickable?

There are some other issues I noticed

At first sight they are all different problems, maybe we could track each in a separated issue?
Anyway let me try to answer:

http://metamath.tirix.org/mpeuni/bm1.1 The hypothesis bm1.1.1 doesn't show. Is it because the non-freeness symbol is missing?

I tried and it worked for me. Maybe you need to refresh the page? (or clear your cache?)

http://metamath.tirix.org/mpeuni/toc?ref=61 This webpage is empty, maybe it doesn't render tables?

It does not even display any "chapter comment" at all. That's a new feature to be added. With the last version of metamath-knife, it should be easy.

http://metamath.tirix.org/mpeuni/ax-mp If I click on min or maj then it gives a 404. More generally this issue appears when I click on hypotheses. Are they not intended to be clickable?

Good point. One solution is to make then not clickable, another would be to display the syntax breakdown for them. The first option seems to be much easier, and I don't see the interest of showing the syntax breakdown just for those and not for all proof steps.

Many links from http://metamath.tirix.org/index.html seems to be broken. For example if I click http://metamath.tirix.org/mpeuni/mmset.html it gives a 404.

Yes, that's a more generic point about the architecture. I'm not sure whether this should be a kind of mirror, with all pages from the original website, just an alternative way to display proof pages, or a completely different site about Metamath. Porting mmset.html maybe only makes sense in the first case.
The project started with:

the idea to build proof pages on the go as they are served,
a will to have more modern looking pages (but that's so
a desire to port "structured" typesetting to Rust
...and just because I could do it (and I found it fun).

Ok, I'm closing this issue since it's solved and open new ones to keep topics in order.


Updated readme

Removing workloads

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

these are valid workfloads still, I think


seen.len causes clash with actually serializable value 'len'

https://github.com/gvx/bitser/blob/4f2680317cdc8b6c5af7133835de5075f2cc0d1f/bitser.lua#L225-L226
In the above excerpt, seen is being used both as seen[value] for any value and seen.len to store the highest index. This seemed to me that it would cause a clash if value == 'len'. Indeed, this is what I get on testing:
> = table.concat(bitser.loads(bitser.dumps({ 'a', 'b', 3 })), ', ')
a, b, 3
> = table.concat(bitser.loads(bitser.dumps({ 'a', 'b', 'len', 3 })), ', ')
invalid value (nil) at index 3 in table for 'concat'
stack traceback:
        [builtin#92]: at 0x0100069ff0
        [C]: at 0x0100001230

One way around this is to have a top-level local lenSentinel = {} in the module and use seen[lenSentinel] instead.

Thank you very much! I think seen originally only held tables, but when its use was expanded, I never checked to see if that could cause problems. I will implement your fix.


Add extracting(String, InstanceOfAssertFactory) to AbstractObjectAssert

Check List:

Fixes N/A
Unit tests : YES
Javadoc with a code example (API only) : YES

@scordio PR reviewed, thanks.

@joel-costigliola PR ready!

Integrated thanks @scordio ! I have just a few tests notably one for soft assertions that extracting assertion errors are properly collected (this test should have been added way back but was not)
https://github.com/joel-costigliola/assertj-core/blob/0203433d7b028eab5faa187bdaa084f6613b0885/src/test/java/org/assertj/core/api/SoftAssertionsTest.java#L653

Thanks! I missed that :man_facepalming:

Not your fault, there was no tests for extracting on object !


added prettier to repo

Added prettier to the repo.
Added pretty-quick and husky in addition, to add a hook to apply prettier to files on commit.

@philip-ellis-sp adding you as a reviewer to review since you had the most to say about this :)


Convert addon { .. } blocks to do .. end

Purely for cosmetic reasons

Needs also update to docs.

You can still use { ... }

You can still use { ... }

I know but if do .. end is the best practice we should update the docs.

Currently there are mixed {} and do end, even in the same schemas. Need to pick one :)

Currently there are mixed {} and do end, even in the same schemas. Need to pick one :)

I thought this PR already picked one? Or did I misunderstood something?


Convert to Open-Source repository

I believe this project and its users would greatly benefit from it being open source.
When developing a debug adapter, I encountered some opaque errors, and occasional missing features that could be easily addressed (and contributed back) if the source code was available.
There was some discussion in previous Issues, but this Issue could serve as the place for continued discussion.

This would be a huge benefit to the community. Just wondering if there had been any consideration at Microsoft since this issue was created?


Add Emotion API

To support the project oxford's new Emotion API.

thanks, @lxiange! This looks great. Could you add a test for the recognize API? Travis CI has expired keys but the tests should work locally if you get updated keys. I'll fix Travis CI this weekend or Monday.


Modified EPA regs

This fixes https://github.com/eregs/notice-and-comment/issues/255

Beautiful history, @vrajmohan


[Removal]: Thankful Umber Squid

Hotspot Name
Thankful Umber Squid
Hotspot b58 Address
112sjsCNctv8J8GqLLQH8WV8ooFjWKuwEPQNgQADYk4ESo4hLAJe
Discord Handle
ukfab#3739
Hotspot Manufacturer
senseCAP
Removal Reason
I purchased 21 Sensecap miners from a secondhand seller thru Fbook. Seller was migrating to US and those miners were not fit for USA region hence he wanted to sell it quick and at reasonable price. He was very convincing and there was no obvious reason for me to doubt. Ofcourse there was some delays but he delivered all miners. At the time of purchase I thought it was plug and play thing. All looked legit and right. so I brought them and paid in full ( see bank Transaction). Seller assured me that he will help me set up and it is easy to understand. After the setup provess and installing, I started looking to how to use helium and went to exploere and it was a shock to see that all HS are on denylist. I when thru the set up and installed antennas too but as there was no earning happening so I looked further into it and realised that I am fooled and now seller is not responding at all. would request you to removed these HS from denylist. I am happy to give evidence that each of the HS is physically insta
Modifications
No
Extra forwarders
No
Extra antennas
No
Additional Information
Physical antenna installation and miner image

@abhay Hi, I am writing it to highlight the issue that i had raised 26 days ago by now. There seems no review update since then. May I please request you to kindly take the matter in hand and have speedy reviewing system for innocents like me. Since the day of purchase, I have been struggling to earn HNTs from my HS. I never thought of such cheaters also exists in this Helium network.
My only hope here is you guys reviewing to get me out of this mud.
Thanks!


Get the sources list from Zone Status xml as a fallback.

I think this fixes #60.

Sounds reasonable. Thanks 👍


PEP 541: upgrade to owner

Greetings,
I am one of the maintainers of the PyTorch project. I have pushed the binaries for all releases of the pytorch project ( pypi username: soumith )
I currently have maintainer (but not owner) rights to torch, pytorch and torchvision projects.
@graingert ( Thomas.Grainger on PyPI ) is the current owner to these packages. Thomas is not affiliated or involved with the PyTorch project (and has never been, beyond this goodwill contribution of registering the placeholder PyPI packages).
I am requesting owner rights to these packages.
The context
When PyTorch released, we weren’t setup to push to PyPI because of package size limits, and unfamiliarity with building controlled linux wheels.
Hence, in the initial months, we didn’t register the pytorch, torch and torchvision PyPI packages ourselves (we were shipping anaconda binaries).
Thomas Grainger kindly registered the package names on PyPI, and put a dummy package with an error message, pointing users to our website.
Over time, I requested that he add me as a collaborator to the project, and finally I started pushing binaries directly to PyPI.
As PyTorch grew, we (PyTorch devs) wanted to make sure that we own the PyPI package (and not just as a collaborator), so we requested Thomas to transfer ownership.
Thomas had one piece of correspondence that acknowledged that he’ll look into it after his holiday break (on April 3rd, 2018), but we received no subsequent correspondence for months.
We reached out to him over email (many emails over several months), twitter and github.
We’ve received no email response, to any correspondence since April 3rd.
He responded once on Twitter direct messages on 31st Oct 2018, saying "I'm happy to transfer the repo in person - face to face", and again there was radio silence to subsequent replies.
From what we can see Thomas is active on github, and PyPI.
We are looking for resolution into this matter, after months of good faith attempts to reach out to Thomas and trying to resolve the matter directly.

Hi @soumith, there seems to be a misunderstanding, you are currently co-owner of all three projects torch, pytorch and torchvision, Thomas changed your status to Owner on all three projects on 2019-02-27.
If you visit https://pypi.org/manage/project/pytorch/collaboration/ and you should see your username listed as owner of the project.

thanks @yeraydiazdiaz . I opened the issue on Feb 19th, 2019. It looks like Thomas changed the ownership on 27th.
Thanks a lot @graingert !


Dynamic Root Policy depending on the authorization request

Software version (AuthzForce Core)
15.1.1-SNAPSHOT (or latest as of writing)
Problem
My particular use case is that for every authorization request, i have a corresponding policyset (either directly contains policies or links to other policysets) that i want to validate it against. Currently i have a root policy that links to everything, for example -->
Root
    PS_1
         P_1_1
         P_1_2
    PS_2
         P_2_1
So that for one authz request (depending on some variable), i might only want to load everything under PS_1 (and not PS_2) . I think i effectively want a dynamic root policy provider as mentioned here? But this seems to be outdated since in the new way of writing pdp.xml, we only pass in one policy provider and then pass in the ID for the root.
How should I approach this problem?  I don't know at runtime how many "root" policies i might have.

Depends on what some variable is. Is it an authorization attribute by any chance? Or can we turn it into one? You are welcome to give an example.

So my PS_1 looks like the one below:
<!-- Shortened for brevity -->
<PolicySet ...>
       <Target>
              <Match MatchId="string-equals">
                         <AttributeValue>MyUuid-123</AttributeValue>
                         <AttributeDesignator AttributeId="....attrId:uuidToCheck" />
              </Match>
       </Target>
       <PolicyIdReference>...</PolicyIdReference>
       <PolicyIdReference>...</PolicyIdReference>
       ....
</PolicySet>

I would have a few of these with different ...attrId:uuidToCheck in their Target elements.
And then I do a request via java (based on sample code on the README)
AttributeFqn uuidAttrId = AttributeFqns.newInstance("...", empty(), "....attrId:uuidToCheck");
AttributeBag<StringValue> uuidAttrValues = Bags.singleAttributeBag(STRING, new StringValue("MyUuid-123");

decisionRequestBuilder.putNamedAttributeIfAbsent(uuidAttrId, uuidAttrValues);

So when I do new BasePdpEngine(pdpConfig) I was hoping to only load the policyset PS_1 and every other policy/policyset reference under it. I've been looking inside PdpEngineConfiguration and i know i can instantiate one by passing in a Pdp object and play around but i'm not sure if that would be a convoluted way of solving my problem.
What do you mean by authorization attribute by the way? Attribute inside the policies or inside the authorization request?

Are you also the poster on this Stackoverflow question?
https://stackoverflow.com/questions/60504584/dynamic-root-policyset-for-multi-tenancy-using-authzforce-core/60536625#60536625
I posted my answer there, so I think you shoud check it.
By authorization attribute, I just mean an attribute that is either in the XACML Request or equivalent AuthzForce DecisionRequest (or any form of authorization request). In your case, this is the uuidToCheck attribute of a DecisionRequest.
So I see at least 2 possible solutions here (improved from my Stackoverflow answer):
Option A
Use one PdpEngine instance (e.g. BasePdpEngine implementation in your case) per uuidToCheck value, i.e. dispatch the request to a specific PdpEngine instance based on this uuid value. For example a String-to-PdpEngine Map or smarter cache mechanism or whatever. So you would need as many PdpEngine instances as uuids I guess.
Option B
Use the same PDP instance for all, as you are doing now, but apply these recommendations:

Use the first-applicable policy combining algorithm in the ROOT policy (so that the evaluation stops/returns at the first applicable - i.e. Target-matching - policyset within, no need to evaluate the others).
After testing the above, if you are still no satisfied with the performance, you can replace the ROOT policy's first-applicable algorithm with your own special policy combining algorithm by implementing an AuthzForce CombiningAlgorithm extension. In this custom algorithm, you would do the same mechanism as Option A basically: map the uuidToChecks to the matching PolicySets directly in a Java Map or whatever cache mechanism.
If still not satisfied with performance, you may implement and enable a global cache on the PdpEngine via an AuthzForce Decision Cache extension.

Hello, really appreciate the response, and yes i was the poster to the SO question
For Option A, if i had like a thousand possible uuidToCheck values to check, (my use case is that the admins can play around with some weird permutation of rules), is that many PdpEngine instances okay? I think a String-to-PdpEngine with a good cache eviction strategy should help a lot but i am wondering if having a lot of PdpEngine instances is okay.
For Option B point number 2, I notice that when calling new BasePdpEngine(), it tries to resolve the root policy by loading it when setting the rootPolicyEvaluator. How does first-applicable work if i don't have the variable yet to differentiate it  (since i pass it along in the DecisionRequest) ?

Option A has the obvious issue to use more memory, but I would expect the overhead not to be significant compared to option B. (In option B, instead of many PdpEngines, you will end up with one PolicyEvaluator instance per PolicySet for each uuidToCheck value. So that's as many PolicyEvaluators as PdpEngines in option A.)
The 'first-applicable' algorithm is described in XACML spec. In your case, it checks the Target of each PolicySet PS in the ROOT PolicySet and skips the policy unless there's a Match (on the uuidTocheck value). If there is, the PS is evaluated, and if the result is Permit/Deny, the evaluation stops there and this result is returned as the final result for the ROOT PolicySet. Done.

Hello, thank you very much.
I understand what you mean by option A not being much overhead compared to option B. I created my own PdpEngine (mostly based on BasePdpEngine) and modified the root policy instantiation. I am now abe to load only the ones i want, and as you mentioned I have one PolicyEvaluator instance per uuidToCheck.


lightgbm.cv strange results in Random Forest mode

This is basically a continuation of this closed issue: https://github.com/microsoft/LightGBM/issues/3387
With lightgbm's cv method, if I use 300 trees in Random Forest mode, I get 300 scores.
In comparison, when I use xgboost's cv method in Random Forest mode, I get just 1 score (this naturally arises from the fact that in xgboost we have decoupled parameters for boosted/parallel trees, see https://github.com/microsoft/LightGBM/issues/3128).
What is the intepretation of the 300 scores? Is the 1st score the one I'd get with 1 tree and the 300th score the one I get with a Random Forest of 300 trees?
While for boosting iterations this kind of output makes sense, I think the interpretation of lightgbm's cv results in Random Forest mode is a bit confusing.

@candalfigomoro Thanks for using LightGBM.

What is the intepretation of the 300 scores? Is the 1st score the one I'd get with 1 tree and the 300th score the one I get with a Random Forest of 300 trees?

Yes, that's correct. The ith value in the list represents the averaged mean or std across the folds using the first i iterations.
This is because rf is treated as a special type of boosting in LightGBM, which does not update the gradients between iterations.

@shiyu1994 Thank you!


 phone auth

Is it possible to use <firebase-auth> for phone number sign-in? Something like:
<firebase-auth user="{{user}}" provider="phone"></firebase-auth>

As of now, no... But a PR would be lovely :) Will review how phone auth works based from docs

The phone auth is implemented in FirebaseUI for Web: https://github.com/firebase/firebaseui-web#configuring-sign-in-providers. Demo: https://fir-ui-demo-84a6c.firebaseapp.com.
@tjmonsi Could you please create a pull request?


Parse ranged set from TLA state

Closes: #156
Description
Adds support for parsing TLA states with ranges set.
a = 1..10

For contributor use:

[x] If applicable, unit tests are written and added to CI.
[x] Ran go fmt, cargo fmt and etc. (or had formatting run automatically on all files edited)
[x] Linked to Github issue with discussion and accepted design OR link to spec that describes this work.
[x] Re-reviewed Files changed in the Github PR explorer.
[x] Added a changelog entry, using unclog.

N/A:

~Updated relevant documentation (docs/) and code comments.~

The set syntax is described in TLA+ summary.


bug: usePrepareContractWrite not using custom wallet client

Is there an existing issue for this?

[X] I have searched the existing issues

Package Version
1.3.9
Current Behavior
Hello,
I'm trying to send a write transaction with another wallet client than the connected one but it's still using the connected wallet anyway:
const { config } = usePrepareContractWrite({
    walletClient: customWalletClient,
    ...
});

const { write } = useContractWrite(config)

// ...

https://github.com/wagmi-dev/wagmi/blob/main/packages/react/src/hooks/contracts/usePrepareContractWrite.ts#L172
Let me know if that's still a supported use case or not, thanks!
Expected Behavior
No response
Steps To Reproduce
No response
Link to Minimal Reproducible Example (StackBlitz, CodeSandbox, GitHub repo etc.)
No response
Anything else?
No response

This isn't supported at the moment.

I think this is a bug, for some specific function we want to use local wallet client instead of calling rpc...


Remove is_cpu_cycle

Removes the is_cpu_cycle flag and replaces it by the sum of all operation flags when necessary.

@npwardberkeley Hi, does this PR look good?


📦 Prepare for 0.3.3 release

Updates the lockfiles and changelog accordingly. Ready for step 6 of the release process:

After you get approval, run git tag vx.y.z HEAD && git push origin --tags. Pushing this tag will kick off a build for all of the release artifacts.

Released and bumped to 0.3.4, ready to merge to main


Reconsider fracpack's single-representation goal

Fracpack tries (but doesn't succeed at) having exactly 1 representation for any valid value. Consider dropping this goal. Doing so would remove these constraints:

An empty vector or string must have a 0 offset. Check not implemented in Rust yet.
If any field in a struct is optional, then all the remaining fields must also be optional. Check not implemented in Rust yet.
If the last n optional fields are empty, then they must be omitted from fixed_data. Check not implemented in Rust yet. Rust encoder doesn't do the skipping yet.
A bool must be 0 or 1. Check not implemented in Rust yet.

This rule should remain since it simplifies verification:

Offset pointers must be in increasing order, not leave gaps, and not reuse storage. The non-reuse part prevents an amplification attack.

Note that some rules which are better off as compile-time checks (no non-optional after optional) end up being runtime checks in Rust since macro expansion can't reliably check for Optional because of type aliases and user-defined wrappers.

I'm ambivalent about dropping the requirement on empty vectors and strings. It still requires a special case, and changing the definition from "MUST" to "MAY" is not a huge benefit.
Non-optional after optional doesn't prevent a canonical representation. I agree that this should be dropped, but it's a separate issue. This rule seems to be intended to catch incorrect extensions, but is neither necessary nor sufficient for that purpose.
Omitting trailing optional fields does have the benefit of allowing an old reader to know whether it has received any unknown fields. I don't think that's sufficient to justify the extra complexity, though.
I would keep the requirement that bool is 0 or 1. It doesn't complicate the specification.

changing the definition from "MUST" to "MAY" is not a huge benefit

In the Rust implementation, "MUST" requires either threading additional information through the decoders and checkers (even non-vectors would pay this cost for the extra field), duplicating code with only minor differences (specializing embedded_variable_unpack and embedded_variable_verify across the vector-like types), or adding a function to the trait with the only purpose to verify the rule.
The root problem: the size field must be 0 to represent empty when the object isn't pointed-to by an offset pointer.

I care a lot more about how hard and confusing it is to specify than about how hard it is to implement.

To be clear, I don't oppose dropping the empty container restriction. I don't have a strong opinion on it one way or the other.

There is an additional benefit to dropping trailing empty optional fields: A new struct that does not actually use any extended fields will not appear as extended when decoded as an old struct.


How do I safely clean vcpkg archives and disable it?

Recently I realize that the archives folder stored in Windows at "C:\Users\usrName\AppData\Local\vcpkg\archives" is quite big. Since I do not need this archives while it occupies some precious SSD space. How can I safely remove this folder and prevent vcpkg from storing back in future?

Hi @stvriver
Thanks for posting this issue.
These archives stored in C:\Users\usrName\AppData\Local\vcpkg\archives are binary caches for the ports that you build.
You can delete them directly if you don't want to keep them.

You can disable it by updating these changes in toolsrc/include/vcpkg/vcpkgcmdarguments.h file:
bool binary_caching_enabled() const { return binary_caching.value_or(false); }
bool compiler_tracking_enabled() const { return compiler_tracking.value_or(false); }

Related PR #12370.

Hi @stvriver
Please let me know if this is still a problem for you.

I am sorry for late checking this. Thanks NancyLi1013 for support.
After I look into vcpkg commands help, I realize that vcpkg supports disable binary caching by "either passing
--no-binarycaching to every vcpkg command line or setting the environment variable VCPKG_FEATURE_FLAGS to -binarycaching."
So I think that is the way I should follow instead of changing the source as your suggestion.
There is one thing I am not clear is where and how can I set VCPKG_FEATURE_FLAGS to -binarycaching?.

Hi @stvriver
Thanks for your further investigation about binary caching. To be honest, I also didn't focus on the workaround to disable binary caching before you pointing this out. Thanks for your help.
As you mentioned above, there are two ways to disable it:

passing --no-binarycaching to every vcpkg command line
add the option --no-binarycaching to vcpkg command, such as vcpkg install sqlite3 --no-binarycaching.

setting the environment variable VCPKG_FEATURE_FLAGS to -binarycaching
add VCPKG_FEATURE_FLAGS  in environment variable, set the value as -binarycaching.
Note: Please restart your machine after you set it.

Hi @NancyLi1013
With your detail expression I think my confusion is clear and the issue is solved.
Again, thanks for your support.

Thanks for your feedback. I'm closing this issue for now.

I have simple workaround it for linux.
Just delete the zip:
sudo apt purge zip then the vcpkg will not find zip command and stop caching. it just more easy.

Hi @NancyLi1013 if I directly delete vcpkg folder listed in C:\Users\usrName\AppData\Local, will there be problems such as import errors later?

I've tried deleting the vcpkg folder in AppData\Local because I had several versions that I no longer needed. Unfortunately it's caused a problem for me - none of my projects now rebuild - they can't find header files and the packages aren't being re-created.

I've tried deleting the vcpkg folder in AppData\Local because I had several versions that I no longer needed. Unfortunately it's caused a problem for me - none of my projects now rebuild - they can't find header files and the packages aren't being re-created.

That problem doesn't seem to be linked to deleting the compressed artifact archives in AppData\Local. The header files wouldn't be installed there (unless you did something unusual).

After deleting the directory VS behaved as though vcpkg wasn't available to it. After closing and re-opening VS, the vcpkg tab disappeared from the project settings.
To cut a long story short, I've found that all that's required to reinstate it is to run "vcpkg integrate install" from an admin VS command prompt. This has reconstituted the AppData\Local\vcpkg directory with these files:
config
vcpkg.path.txt
vcpkg.user.props
vcpkg.user.targets
My projects now build OK again.


Raspberry pi Error

14/01/2016 15:24:15 [*] INFO: Main()  Archi's Steam Farm, version <IP_ADDRESS>
Unhandled Exception:
System.AggregateException:  ---> System.Threading.Tasks.TaskCanceledException: The Task was canceled
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.Wait (Int32 millisecondsTimeout, CancellationToken cancellationToken) [0x00000] in :0
at System.Threading.Tasks.Task.Wait () [0x00000] in :0
at ArchiSteamFarm.Bot..ctor (System.String botName) [0x00000] in :0
at ArchiSteamFarm.Program.Main (System.String[] args) [0x00000] in :0
--> (Inner exception 0) System.Threading.Tasks.TaskCanceledException: The Task was canceled
[ERROR] FATAL UNHANDLED EXCEPTION: System.AggregateException:  ---> System.Threading.Tasks.TaskCanceledException: The Task was canceled
--- End of inner exception stack trace ---
at System.Threading.Tasks.Task.Wait (Int32 millisecondsTimeout, CancellationToken cancellationToken) [0x00000] in :0
at System.Threading.Tasks.Task.Wait () [0x00000] in :0
at ArchiSteamFarm.Bot..ctor (System.String botName) [0x00000] in :0
at ArchiSteamFarm.Program.Main (System.String[] args) [0x00000] in :0
--> (Inner exception 0) System.Threading.Tasks.TaskCanceledException: The Task was canceled

https://github.com/JustArchi/ArchiSteamFarm/wiki/Mono

Done that already, Get this error when trying to start the client too (edited the example file) No clue how to make the program work on my raspberry really..
pi@raspberrypi:~/Desktop $ mono ASF.exe --client "start example"
14/01/2016 15:37:36 [] INFO: Main()  Archi's Steam Farm, version <IP_ADDRESS>
14/01/2016 15:37:39 [] NOTICE: ParseArgs()  Command sent: "start example"
14/01/2016 15:37:44 [!] EXCEPTION: HandleCommand()  A system exception has occurred.
14/01/2016 15:37:44 [*] NOTICE: ParseArgs()  Response received: ""

mono --version ?

Mono JIT compiler version 3.2.8 (Debian 3.2.8+dfsg-10)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
TLS:           __thread
SIGSEGV:       normal
Notifications: epoll
Architecture:  armel,vfp+hard
Disabled:      none
Misc:          softdebug
LLVM:          supported, not enabled.
GC:            sgen

https://github.com/JustArchi/ArchiSteamFarm/wiki/Mono

All hard-to-explain issues without obvious cause are automatically ignored, if your Mono version is not latest stable one.

And it's well explained how to install latest Mono version, too.

I followed that guide but now I get Illegal instructions when trying to run mono ASF,exe --server

Log or didn't happen.

pi@raspberrypi:~ $ mono ASF.exe --server
Illegal instruction
pi@raspberrypi:~ $ mono --version
Illegal instruction

Then you screwed up something with your Mono installation, and I don't know what exactly.

Maybe the os is not compatible with mono? I will try installing another os and see if that helps.

I don't know what OS you have and what you're trying to do, you should know that. Without usable Mono you're not going to run ASF. Mono is supported on ARM architecture, also in latest stable release.

I understand that and after researching a bit I think I found the problem, Raspian is not supported for mono so I will try installing another os.

Raspberry Pi (1) requires some hacks because it's not fully compatible with armhf architecture supported by Mono in the binaries I provided in Wiki. Custom OS won't help, Raspbian is your best bet.
However, there should be usable Mono for you in testing branch: https://packages.debian.org/search?keywords=mono-complete
What I suggest to do is the following:

Install latest Raspbian
Switch to testing (nano /etc/apt/sources.list, all wheezy, jessie -> testing)
apt-get update && apt-get dist-upgrade
reboot
If all of above works, apt-get install mono-complete

With a bit of luck, you should have usable Mono 4.2 on your OS.

Keep in mind that above will switch you to testing branch, which may not be as stable as stable one, currently "jessie". It's possible to install only mono-complete (with dependencies) from testing branch instead, but all of that goes far ahead of ASF support I provide here, so I'd kindly suggest google if you want to learn how to do that.

Actually, I'm using mono 4.0.4 now, and haven't meet any problem. So, probably any 4.x.x would be enough.

Yep, obviously ASF will also work on other Mono versions and not only one, but only latest one guarantees bugless experience (and only on latest one I'm testing ASF). In other words, you can use any version you want, just be prepared for eventual issues. The more recent version you have, the less issues you will encounter. Anything 3.12+ should work more or less flawlessly, but that can change in future, for instance if I decide that I want to build ASF against .NET 4.6.

I'm totally agree that in case of any problem first action that should be taken is upgrading mono and checking if all mono modules installed.

Thank you! Now the program work! :D

Glad to hear it.


Parallel cmake builds may fail with .../reflection.pb.h: No such file or directory

(See diagnosis below)
Please answer these questions before submitting your issue.
Should this be an issue in the gRPC issue tracker?
Yes.
What version of gRPC and what language are you using?
gRPC 1.6.0, C++
What operating system (Linux, Windows, …) and version?
Ubuntu 16.04
What runtime / compiler are you using (e.g. python version or version of gcc)
gcc 5.4.0
What did you do?
Tried to build grpc with cmake, then do a parallel build (make -j 16)
What did you expect to see?
I expected the build to succeed.
What did you see instead?
/tmp/grpc/gens/src/proto/grpc/reflection/v1alpha/reflection.grpc.pb.cc:5:61: fatal error: src/proto/grpc/reflection/v1alpha/reflection.pb.h: No such file or directory
compilation terminated.

This happens because the .proto files are compiled with the protobuf_generate_grpc_cpp CMake function, which uses add_custom_command specifying the generated .pb.h, .pb.cc, .grpc.pb.h, and grpc.pb.cc files as OUTPUT.
The *.pb.h and *.pb.cc files are then compiled separately in more than one add_library target.
This is explicitly forbidden for add_custom_command, however. See https://cmake.org/cmake/help/v3.0/command/add_custom_command.html: "Do not list the output in more than one independent target that may build in parallel or the two instances of the rule may conflict (instead use add_custom_target to drive the command and make the other targets depend on that one)."
add_custom_command does not create a separate target; it ensures that the command is run every time the OUTPUTed files are required, so, if they're required from more than one target, the .proto files are built more than once. If these builds happen in parallel, they clobber each other.
Anything else we should know about your project / environment?

@tudor  any ideas how to fix this?

I believe this is still an issue.

@zackgalbreath it seems that this item requires a lot of cmake expertise - any suggestions what would be the right way of generating from .proto files (without misusing add_custom_command as mentioned above)?
The right way of generating .cc from .proto files is important, because the grpc c++ users will also need to generate code from .proto files, so we should be providing a good example how to do that with cmake correctly.

As an alternative, would it be possible to only compile the .cc files once in a static library (or even an object library) and then link to them from targets that need them?

@tudor posted a good quote from the CMake documentation on what the issue here is and the right way to fix it:

Do not list the output (from add_custom_command) in more than one independent target that may build in parallel or the two instances of the rule may conflict (instead use add_custom_target to drive the command and make the other targets depend on that one)

Kyle's idea of compiling these files into a single static / object library is also a good one. This would save us a little bit of build time because these object files would only have to be built once each, instead of having to build them separately for each library that needs them.
If it turns out that isn't feasible for some reasson, the "right way" to do what you're trying to do is to use a custom target. This custom target would depend on the generated source files, and the libraries that actually need these source files would then depend on the custom target.
Somewhat related, why do you define your own protobuf_generate_grpc_cpp() CMake function, rather than using the protobuf_generate_cpp() function that's provided in FindProtobuf.cmake?

So far, I have not been able to reproduce the parallel build issue with either Make or Ninja. However, I am going to implement the object library fix anyway, as it seems like the right thing to do. Perhaps someone else who has been able to reproduce this issue can verify that the object library will fix it.

The object library fix seems right to me. Thanks for doing this!

@tudor posted a good quote from the CMake documentation on what the issue here is and the right way to fix it:

Do not list the output (from add_custom_command) in more than one independent target that may build in parallel or the two instances of the rule may conflict (instead use add_custom_target to drive the command and make the other targets depend on that one)

Kyle's idea of compiling these files into a single static / object library is also a good one. This would save us a little bit of build time because these object files would only have to be built once each, instead of having to build them separately for each library that needs them.
If it turns out that isn't feasible for some reasson, the "right way" to do what you're trying to do is to use a custom target. This custom target would depend on the generated source files, and the libraries that actually need these source files would then depend on the custom target.
Somewhat related, why do you define your own protobuf_generate_grpc_cpp() CMake function, rather than using the protobuf_generate_cpp() function that's provided in FindProtobuf.cmake?

I'm not 100% sure but it could be for one of these reasons:

historic reasons and we never revisited this
unlike protobuf which only generates the protobuf messages C++ code (.pb.h, .ph.cc, gRPC also generates its own stubs via protoc plugins .grpc.h  and grpc.cc, which is something that protobuf doesn't support of of the box - mostly because protobuf doesn't know anything about gRPC).


Doc says fully customized skins are not possible while in fact they are

I am currently running

SpongeForge version: 2705
SpongeVanilla version: ????
Spogne APi version 7
Java version:  8
Operating System: arch linux

Plugins/Mods: irrelevant ...

Issue Description
i think I found wrong information in the docs. you can change the skin of any player and Human to anything you want ... you can just upload png to mineskin.org service and then he gives you signature and texture value base64 you want and need (same way you create skulls). see: https://wiki.citizensnpcs.co/Skins
    /**
     * Represents the {@link Key} for the skin of a {@link Humanoid}.
     *
     *
Skins can only be manipulated by supplying the UUID of a player
     * having that skin. The binary skin data is signed by Mojang so fully
     * customized skins are not possible.

     *
     * @see SkinData#skinUniqueId()
     */
    public static final Key<Value<UUID>> SKIN_UNIQUE_ID = DummyObjectProvider.createExtendedFor(Key.class,"SKIN_UNIQUE_ID");

This is already fixed in bleeding, so for API8+, it won't be for API 7 because it caused breaking changes.
Got fixed by this PR: https://github.com/SpongePowered/SpongeAPI/pull/1836

looks pretty good, hope its merged

Yeah, it's merged: https://github.com/SpongePowered/SpongeAPI/commit/a3431307f06996321489b69664b16202e8806042


Test FOSUserBundle Alternatives

I need to test with something other than FOSUserBundle before tagging v2.
Any suggestions?

Related to #41


Flakey test: TestEventually/TestEventually_InitiallyErroring_EventuallySucceeds

I occasionally get this error when running make test.
richard   39-crd-defaults  ~  projects  improbable-eng  etcd-cluster-operator  make test
KUBEBUILDER_ASSETS="/home/richard/projects/improbable-eng/etcd-cluster-operator/bin/kubebuilder/bin" go test ./... -coverprofile cover.out
?   	github.com/improbable-eng/etcd-cluster-operator	[no test files]
ok  	github.com/improbable-eng/etcd-cluster-operator/api/v1alpha1	0.046s	coverage: 52.2% of statements
ok  	github.com/improbable-eng/etcd-cluster-operator/controllers	6.633s	coverage: 79.5% of statements
?   	github.com/improbable-eng/etcd-cluster-operator/internal/etcdenvvar	[no test files]
ok  	github.com/improbable-eng/etcd-cluster-operator/internal/test	0.030s	coverage: 65.2% of statements
ok  	github.com/improbable-eng/etcd-cluster-operator/internal/test/e2e	0.038s	coverage: 0.0% of statements
--- FAIL: TestEventually (0.11s)
    --- FAIL: TestEventually/TestEventually_InitiallyErroring_EventuallySucceeds (0.05s)
        require.go:794:
            	Error Trace:	try_test.go:130
            	Error:      	Received unexpected error:
            	            	foo
            	Test:       	TestEventually/TestEventually_InitiallyErroring_EventuallySucceeds
            	Messages:   	an error was found, but not expected
FAIL
coverage: 94.4% of statements
FAIL	github.com/improbable-eng/etcd-cluster-operator/internal/test/try	0.227s
?   	github.com/improbable-eng/etcd-cluster-operator/webhooks	[no test files]
FAIL
make: *** [Makefile:36: test] Error 1

Fixed by #91 (hopefully)


Cds unable to find service implementation

We have recently upgraded our application from cds 3 to cds 4. When running cds run in the project root folder everything runs perfectly. However when running cds run within the ./srv folder cds seems to be unable to find the service.js implementation. After some digging it looks like something goes wrong in @sap/cds/lib/srv/factory.js. Specifically the sibling function is resolving to the current path which results in an extra srv/ segment like srv/srv/. It's unable to find the sibling Javascript implementation. This causes problems with our mta deployment setup (which will run cds run from within the srv/ folder).

Also in @sap/cds/lib/srv/factory.js:
...
return _use (_required())

function _use (it) {
    ...
    if (typeof it === 'function') return _use (_required(), /*with:*/ o.impl = _function(it)) // NOSONAR
    ...
}

Wouldn't that result in an infinite loop?


Docs page for "Apps, Stubs, and entrypoints" broken

This docs page is broken.
I get the below result (even in incognito window). All other docs pages I tested work fine.

This one:

It's treating "docs" as profile, "guide" as environment, and "apps" as "modal dashboard for apps".
I guess routing precedence really wants users to be allowed to create a profile called "docs" and an environment called "guide" if they so wish.
Quick fix would be to move that docs page to "https://modal.com/docs/guide/apps_stubs_and_entrypoints"

This appears to be working as expected now; thanks for reporting!

@luiscape @mwaskom @RohanArepally y'all rock, thanks so much.


Request to Update to Minecraft 1.8.9

I will be passing along the mod to my developers and they will simply change code to make the mod compatible with the Minecraft update for use on Minecraft servers

I'm really glad you guys are planning to contribute. We haven't had any time to work on it in the past year. My question is what exactly is the thought in merging this into master? I prefer to leave master as the place where the most stable code is. Would you prefer a new 1.8.9 branch instead?

I apologize for the location of the request. I am new to GitHub, but yes,
we would like to see a 1.8.9 branch as it will be used in a major project
from Legion Gaming Community and Armory Gaming Experience to create a story
based pair of servers following two new fan made Lyoko Series.
On Sat, Apr 16, 2016 at 6:56 PM, Jacob Rhoda<EMAIL_ADDRESS>wrote:

I'm really glad you guys are planning to contribute. We haven't had any
time to work on it in the past year. My question is what exactly is the
thought in merging this into master? I prefer to leave master as the place
where the most stable code is. Would you prefer a new 1.8.9 branch instead?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Cortex-Modders/CodeLyokoMod/pull/24#issuecomment-210920749

I have not tested the 1.7.10 mod but we may request some quick development
spawn eggs in the future in order to allow us to create new sectors.
On Sat, Apr 16, 2016 at 7:05 PM, Flaming Battle Sword <
<EMAIL_ADDRESS>wrote:

I apologize for the location of the request. I am new to GitHub, but yes,
we would like to see a 1.8.9 branch as it will be used in a major project
from Legion Gaming Community and Armory Gaming Experience to create a story
based pair of servers following two new fan made Lyoko Series.
On Sat, Apr 16, 2016 at 6:56 PM, Jacob Rhoda<EMAIL_ADDRESS>wrote:

I'm really glad you guys are planning to contribute. We haven't had any
time to work on it in the past year. My question is what exactly is the
thought in merging this into master? I prefer to leave master as the place
where the most stable code is. Would you prefer a new 1.8.9 branch instead?
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Cortex-Modders/CodeLyokoMod/pull/24#issuecomment-210920749

Our server host would also like permission to host our fork exclusively on a third party site that isnt github. This way, when special changes that are exclusive to the server.

I've made a branch called 1.8.9 that I believe has the latest code. Dimension support was being worked on last but never finished. You can fork to wherever you want and push upstream as you see fit.

I'm interested in seeing where you go with this. Definitely keep me updated.

https://legiongc.com/index.php/code-lyoko-minecraft-server/ As time goes
on, this will be where you can go to see both of the server's progress
On Sat, Apr 16, 2016 at 7:22 PM, Jacob Rhoda<EMAIL_ADDRESS>wrote:

I'm interested in seeing where you go with this. Definitely keep me
updated.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Cortex-Modders/CodeLyokoMod/pull/24#issuecomment-210921916

Tried to launch the 1.8.9 mod into Forge Version 1.8.9 as the zip folder.
Mod is not starting. I will run my tests of the mod in 1.7.10 until I get
update information from you.
On Sat, Apr 16, 2016 at 8:14 PM, Flaming Battle Sword <
<EMAIL_ADDRESS>wrote:

https://legiongc.com/index.php/code-lyoko-minecraft-server/ As time goes
on, this will be where you can go to see both of the server's progress
On Sat, Apr 16, 2016 at 7:22 PM, Jacob Rhoda<EMAIL_ADDRESS>wrote:

I'm interested in seeing where you go with this. Definitely keep me
updated.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Cortex-Modders/CodeLyokoMod/pull/24#issuecomment-210921916

FYI that link isn't working yet. I assume it will be when you guys get up and running, though.
Yeah I can't imagine the update will be easy. As I remember a lot changed between 1.7 and 1.8, and lots of people were not happy. It can certainly be done if you guys are willing to put in the effort.

We are willing to put in the effort. We want to make this server work, the
issue is I personally have no mod making experience, but if I speak to my
team I am sure we can get you as much help as possible. I will do a review
for 1.7.10 to show what works to my team and so you can see what we want to
implement into the mod.
On Sat, Apr 16, 2016 at 8:41 PM, Jacob Rhoda<EMAIL_ADDRESS>wrote:

FYI that link isn't working yet. I assume it will be when you guys get up
and running, though.
Yeah I can't imagine the update will be easy. As I remember a lot changed
between 1.7 and 1.8, and lots of people were not happy. It can certainly be
done if you guys are willing to put in the effort.
—
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub
https://github.com/Cortex-Modders/CodeLyokoMod/pull/24#issuecomment-210932718


Outline missing for struct fields defined via copybook

Describe the bug
Defining an external data structure in a copybook and copying it inside another rpg source via likeds leads to the outline not being correctly filled in the main source.
To Reproduce
Let's define an external data structure in a copybook.
Now use a /copy statement inside another rpg source.
Define a data structure inside the rpg source which uses the externally described data structure from your copybook via likeds.
In the copybook outline, the external data structure gets extended and you can see the fields. In the main outline, you'll only see the local struct but without fields. Completion items and linting errors ("no reference" for fields) get shown correctly, but the outline is missing.
RPG source:
**free
ctl-opt main(Main);
/copy 'QCPYLESRC/somecopybook.rpgle'
dcl-proc Main;
dcl-pi *n;
end-pi;
dcl-ds SomeStruct likeds(GlobalStruct) inz;
end-proc;
Copy source:
**free
// data structure for file SomeFile
dcl-ds GlobalStruct extname('SOMEFILE') qualified template;
end-ds;
Expected behavior
The outline should show the same fields in both sources if you just use a likeds.
Screenshots
See example code given above
Environment

Extension version v0.26.9
IBM i OS version 7.4

Additional context
In documentSymbols.ts, when structs are being extended, the path of a subItem is filtered against the currentPath. While the line number of the subItem is correctly set in the main source, the path is still pointing to the copybook.
Similar to #325, the issue seems to be the parser.js while fetching local definitions in expandDs.
After cloning the subItems, I should simply have added newItem.position.path = ds.position.path

Thanks for the quick response!
I'm afraid we might be talking about different topics, so just to make sure: Everything that's defined in a copybook should just be in the copybook's outline - I'd totally agree with that.
So if you define a template data structure in a copybook (like GlobalStruct in my original example) I wouldn't want to see it in an outline including the copybook.
But if you define a data structure in an rpg source (like SomeStruct in the example) I'd expect it to always build the outline including the sub fields, no matter if the data structure is using a template from a copybook (via likeds) or not.
Right now if I define a template data structure in my copybook and code the sub fields by hand, I can see the sub fields in the outline of a locally defined struct using said template via /copy + likeds. But if I switch the template definition to extname, the list wont build up - it's just the struct without its children.

But if you define a data structure in an rpg source (like SomeStruct in the example) I'd expect it to always build the outline including the sub fields, no matter if the data structure is using a template from a copybook (via likeds) or not.

Yep, that is correct.
Perhaps there is a bug, and since you provided a test case, we should create one. I will do that now and get back to you.

@EVLSDE I have written a test case with your examples. To me, it looks like the parser is ok here so it's likely something in the language server code itself. I will dig further today.
Let me know if I am missing something:
https://github.com/codefori/vscode-rpgle/commit/6c335cb60a826e775834506407c001fb0372a9ea

I have to apologize, seems I've been blinded by the "mighty RDI" this time.
For example: If you open a TS source in vs code, create a class in script A and instantiate it in script B, you wont see the object props in the outline of script B, just the object name.
That means you were right all along - the extension works as intended and this would be an enhancement (which is still tempting as we're used to RDI).

@EVLSDE No problem. It would make sense to see the children members of the struct in the file - I will see about trying it out.

This look quite the same as issues I outlined in #313 and #308


The "KNOWN-BUG"

Hi,
It came out the information when i run IC3
"KNOWN-BUG:While recursing, parameters in this context look the same as the parameters in the callee context.That is a LanguageConstraints.Parameter passed via lc.arguments is really a parameter of this(caller) function,but it will be mistakenly interpreted as a parameter of the callee"
Does it mean IC3 failed to analysis this apk?
Thanks!

Hi,
No, this just means that in this case you may have some imprecision in the analysis.
Best Regards,
Damien

Hi,
It keep printing the KNOWN-BUG for almost an hour.
Are there some options in IC3 or Dare to avoid this?
I run Dare with -e option and IC3 with none.
Thanks!

No, right now I don't think you can deactivate this message.


lib2to3.pgen2.parse.ParseError

Hello,
I have installed  latest mmdetection 2.3.0 , and the mmcv-full 1.0.4 + torch 1.4.0 + cuda10.0
below are some related packages in the enviorment:
mmcv-full                 1.0.4                    pypi_0    pypi
mmdet                     2.3.0rc0+40bc19a           dev_0
pytorch 1.14.0
yapf 0.30.0
torchvision=0.5.0

I created my VOC-format dataset. and slightly modifed config/pascal_VOC/faster_rcnn.py, config/base/dataset/voc_0712.py and core/evaluation/class_names.py to fit into my dataset

I can run image_demo.py and test.py on my own trained model (the model was trained using mmdet 2.0.0 in my anothe enviroment)

HOWEVER, when I train with the new built mmdet 2.3.0, i run into below problems:
python tools/train.py configs/pascal_voc/faster_rcnn_r50_fpn_1x_voc_XXXXX.py

Traceback (most recent call last):
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/yapf/yapflib/pytree_utils.py", line 115, in ParseCodeToTree
tree = parser_driver.parse_string(code, debug=False)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/driver.py", line 104, in parse_string
return self.parse_tokens(tokens, debug)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/driver.py", line 72, in parse_tokens
if p.addtoken(type, value, (prefix, start)):
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/parse.py", line 159, in addtoken
raise ParseError("bad input", type, value, context)
lib2to3.pgen2.parse.ParseError: bad input: type=20, value='<', context=('', (255, 12))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/yapf/yapflib/pytree_utils.py", line 121, in ParseCodeToTree
tree = parser_driver.parse_string(code, debug=False)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/driver.py", line 104, in parse_string
return self.parse_tokens(tokens, debug)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/driver.py", line 72, in parse_tokens
if p.addtoken(type, value, (prefix, start)):
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/lib2to3/pgen2/parse.py", line 159, in addtoken
raise ParseError("bad input", type, value, context)
lib2to3.pgen2.parse.ParseError: bad input: type=20, value='<', context=('', (255, 12))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "tools/train.py", line 153, in
main()
File "tools/train.py", line 96, in main
cfg.dump(osp.join(cfg.work_dir, osp.basename(args.config)))
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/mmcv/utils/config.py", line 377, in dump
f.write(self.pretty_text)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/mmcv/utils/config.py", line 341, in pretty_text
text, _ = FormatCode(text, style_config=yapf_style, verify=True)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/yapf/yapflib/yapf_api.py", line 147, in FormatCode
tree = pytree_utils.ParseCodeToTree(unformatted_source)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/yapf/yapflib/pytree_utils.py", line 127, in ParseCodeToTree
raise e
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/site-packages/yapf/yapflib/pytree_utils.py", line 125, in ParseCodeToTree
ast.parse(code)
File "/home/usr/anaconda3/envs/open-mmlab/lib/python3.7/ast.py", line 35, in parse
return compile(source, filename, mode, PyCF_ONLY_AST)
File "", line 255
voc_classes=<function voc_classes at 0x7f17b888d9e0>
Can someone help me here? looks like sth related to parsing or yapf...format thing
thanks a lot!

I think somehow I add some "import class_names" lines in the config.py
but the newest version seems can not parse that,
what coud be a good way to dynamically change bbox_head then instead of a fixed number?

What do you mean by "dynamically change bbox_head"?

@leopardyao Hi, may I ask have you solved the mentioned problem?

@leopardyao Hi, may I ask have you solved the mentioned problem?

i also meet this error ,  how do you solve it  ?  thx

i also meet this error , how do you solve it ? thx

i’ve solved it ,just not match version ;using  mmcv-full==1.6.0 and mmsegmentation==0.28.0 can run it


[BSE-4249] to_csv

(cherry picked from commit 5841d4d8464935e680eb5b54911f9fa1fb2299c2)
Transferring from bodo archive, was reviewed but not yet merged
Changes included in this PR

Testing strategy

User facing changes

Checklist

[ ] Pipelines passed before requesting review. To run CI you must include [run CI] in your commit message.
[ ] I am familiar with the Contributing Guide
[ ] I have installed + ran pre-commit hooks.

Once tests are passing LGTM, thanks Rae, if you'd like help debugging let me know


Add missing tests for Array extensions. Make each public again with t…

Hey man,
I've added tests for the Array extensions. Both each methods are now testable so you can see how they work and we can (hopefully) bring them back as public to be of use. They're probably the most used methods for us. Type inference is really the key here, making the intend clear with less typing ;)

Add missing tests for Array extensions.
Make each public again with tests.
Remove use of deprecated method.

I'll work on the Dictionary extensions next.

Thanks for the PR :+1:
What was the problem with requestURL?

No problems.
NSURLConnection -> sendSynchronousRequest:returningResponse:error is deprecated on iOS9 and NSURLSession.sharedSession().dataTaskWithRequest has been available since iOS 7 :)
https://developer.apple.com/library/ios/documentation/Cocoa/Reference/Foundation/Classes/NSURLConnection_Class/index.html#//apple_ref/occ/clm/NSURLConnection/sendSynchronousRequest:returningResponse:error:

Thanks for merging the changes, you're the man!


Add option to use Docverter

I have an idea but I think it can wait until after 0.90.
Idea is to add option to use and/or fallback to http://docverter.com instead of local pandoc. This could be huge, because then you could possibly use pypandoc without having pandoc installed.

I wonder if it would make sense to set up a sibling project with the same API for that (pydocverter or something). Then you could do things like:
try:
    import pypandoc as converter
except ImportError:
    import docverter as converter

...

converter.convert(...)

Or alternatively we can add some extra parameter to convert for that.

Interesting. I was thinking of it built into pypandoc, but this is an interesting idea. I'll have to let that float around in my head for a bit.

https://gist.github.com/yoavram/4356539
https://gist.github.com/wcaleb/5478130

I'm thinking a separate module for docverter makes sense. Then each one will be simpler. Maybe pypandoc could use the new module as an extra.

I have some code locally for a pydocverter module. I'll publish a bit later.

Ok, if you want we can add a mention about this sort of usage to the readme so people are aware of it. I can link to your module there.

https://github.com/msabramo/pydocverter

Nice! Let me know once it's at PyPI and I'll add a small example and mention to README (or you can do a PR if you want something specific).

Just uploaded it to PyPI: https://pypi.python.org/pypi/pydocverter

See https://github.com/bebraw/pypandoc/pull/35

Merged. I did a minor release (0.9.1) that contains the readme update. Thanks!


Tileset

Add tiles for a simple tileset to be used in the game. The tileset will be 64x64 and will be forest based.
We can use  as reference as well as Kenney's tilesets.
Our tileset needs:

[ ] Trees
[x] Water
[x] Ground surface
[x] Ground

Trees are separated assets, they don't need to be tilable, they just need to fit the tile aspect (64x64


[BEAM-2229] GcsFileSystem: handle empty files

And add tests.
R: @lukecwik

CC: @davorbonaci
Fairly simple bug in first stable release should probably be CPed for release-2.0.0

LGTM


The initial zoom-out takes you way far out

I got so used to this bug that I forgot it was a bug...

Start a new game.
Zoom out (tested with both mouse wheel and touchpad, specifically touchpad with zoom in/out along the right side)

Expected:
You are zoomed out a little bit.
Actual:
You are zoomed out so far you might as well be on the Moon.
If you tap "z" to restore 100% zoom, and then zoom out one wheel notch, then you only get zoomed out a little bit, as expected.  So it's a problem on initial zoom only.

Adding to Carthage since I just figured out how to fix it.  This is part of the Bug Fixing set of changes I think we should do in the near future.


Conditional handling of .ASCIZ improperly always outputs a trailing 0

.asciz should only emit a trailing zero in a conditional block, when the correct IF condition is selected. Currently, when the condition isn't met, the string bytes aren't emitted but the trailing zero still is

Released as v1.11


[feature] how to train a new llm model to include my  private specific apis

I would like to request the following features for the LLM project:

A tutorial on how to train/finetune my LLM to use my private API. This would allow me to customize the LLM for my specific domain and data sources.
2 A guide on how to build my own information retriever (oracle retriever). This would enable me to use the LLM for more complex and diverse queries that require external knowledge.
A documentation on how to organize the training material files for finetuning. This would help me to manage the data and parameters for the LLM more efficiently and effectively."

I also want to know when the training code will be released？

Me too.

Me too

Can you please let us know, when will training/finetuning code be out?