jax.ops.segment_sum incompatible with jit

segment sum appears to be non-jittable
import jax
import numpy as np

c = np.array([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]])
b = np.array([0, 0, 1])
jax.ops.segment_sum(c, b)
jit_fn = jax.jit(jax.ops.segment_sum)
jit_fn(c, b)

Even if we use static_argnums we run into a similar issue. Traceback:
WARNING:absl:No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)
/home/yutong/venv37/lib/python3.7/site-packages/jax/_src/numpy/lax_numpy.py:2872: UserWarning: Explicitly requested dtype int64 requested in zeros is not available, and will be truncated to dtype int32. To enable more dtypes, set the jax_enable_x64 configuration option or the JAX_ENABLE_X64 shell environment variable. See https://github.com/google/jax#current-gotchas for more.
  lax._check_user_dtype_supported(dtype, "zeros")
Traceback (most recent call last):
  File "test_jit.py", line 8, in <module>
    jit_fn(c, b)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py", line 347, in segment_sum
    num_segments = int(num_segments)
jax._src.traceback_util.FilteredStackTrace: jax.core.ConcretizationTypeError: Abstract tracer value encountered where concrete value is expected.

The problem arose with the `int` function. If trying to convert the data type of a value, try using `x.astype(int)` or `jnp.array(x, int)` instead.

While tracing the function segment_sum at /home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py:312, this concrete value was not available in Python because it depends on the value of the arguments to segment_sum at /home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py:312 at flattened positions [1], and the computation of these values is being staged out (that is, delayed rather than executed eagerly).

You can use transformation parameters such as `static_argnums` for `jit` to avoid tracing particular arguments of transformed functions, though at the cost of more recompiles.

See https://jax.readthedocs.io/en/latest/faq.html#abstract-tracer-value-encountered-where-concrete-value-is-expected-error for more information.

Encountered tracer value: Traced<ShapedArray(int32[])>with<DynamicJaxprTrace(level=0/1)>

The stack trace above excludes JAX-internal frames.
The following is the original exception that occurred, unmodified.

--------------------

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "test_jit.py", line 8, in <module>
    jit_fn(c, b)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/_src/traceback_util.py", line 139, in reraise_with_filtered_traceback
    return fun(*args, **kwargs)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/api.py", line 398, in f_jitted
    return cpp_jitted_f(context, *args, **kwargs)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/api.py", line 295, in cache_miss
    donated_invars=donated_invars)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 1275, in bind
    return call_bind(self, fun, *args, **params)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 1266, in call_bind
    outs = primitive.process(top_trace, fun, tracers, params)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 1278, in process
    return trace.process_call(self, fun, tracers, params)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 631, in process_call
    return primitive.impl(f, *tracers, **params)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/interpreters/xla.py", line 581, in _xla_call_impl
    *unsafe_map(arg_spec, args))
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/linear_util.py", line 260, in memoized_fun
    ans = call(fun, *args)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/interpreters/xla.py", line 656, in _xla_callable
    jaxpr, out_avals, consts = pe.trace_to_jaxpr_final(fun, abstract_args)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/interpreters/partial_eval.py", line 1216, in trace_to_jaxpr_final
    jaxpr, out_avals, consts = trace_to_subjaxpr_dynamic(fun, main, in_avals)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/interpreters/partial_eval.py", line 1196, in trace_to_subjaxpr_dynamic
    ans = fun.call_wrapped(*in_tracers)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/linear_util.py", line 166, in call_wrapped
    ans = self.f(*args, **dict(self.params, **kwargs))
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py", line 347, in segment_sum
    num_segments = int(num_segments)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 561, in __int__
    def __int__(self): return self.aval._int(self)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 955, in error
    raise_concretization_error(arg, fname_context)
  File "/home/yutong/venv37/lib/python3.7/site-packages/jax/core.py", line 944, in raise_concretization_error
    raise ConcretizationTypeError(msg)
jax.core.ConcretizationTypeError: Abstract tracer value encountered where concrete value is expected.

The problem arose with the `int` function. If trying to convert the data type of a value, try using `x.astype(int)` or `jnp.array(x, int)` instead.

While tracing the function segment_sum at /home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py:312, this concrete value was not available in Python because it depends on the value of the arguments to segment_sum at /home/yutong/venv37/lib/python3.7/site-packages/jax/_src/ops/scatter.py:312 at flattened positions [1], and the computation of these values is being staged out (that is, delayed rather than executed eagerly).

You can use transformation parameters such as `static_argnums` for `jit` to avoid tracing particular arguments of transformed functions, though at the cost of more recompiles.

See https://jax.readthedocs.io/en/latest/faq.html#abstract-tracer-value-encountered-where-concrete-value-is-expected-error for more information.

Encountered tracer value: Traced<ShapedArray(int32[])>with<DynamicJaxprTrace(level=0/1)>

Hi - thanks for the report. The issue is mentioned in the docstring

Since num_segments determines the size of the output, a static value must be provided to use segment_sum in a jit-compiled function.

You can fix this passing a static value for num_segments; for example:
import jax
import numpy as np

c = np.array([[1,2,3,4], [4, 3, 2, 1], [5,6,7,8]])
b = np.array([0, 0, 1])
jax.ops.segment_sum(c, b)
jit_fn = jax.jit(jax.ops.segment_sum, static_argnums=2)
jit_fn(c, b, 2)
# DeviceArray([[5, 5, 5, 5],
#              [5, 6, 7, 8]], dtype=int32)

Thanks for this - I was trying to use static_argnums=1, should've read the docs more carefully!


Update env var notes to capture Curtis' release notes

Intended to do this in the last PR, but merged by accident :(

Thankyou for the thorough review @cathyjung-da , and for replicating across the 3 copies!


Out prediction is blank

When looking at the prediction of evaluation the outputs of the model are just blank.
Were you able to train the model to predict expected frames?
The loss goes down but the model seems to have converged to optimally predicting blanks.

Yes, I have experienced this as well. This is primarily a problem for MovingMNIST, since the data is very sparse. Have you tried altering the learning rate? It sometimes happens if I set it too low, or if the weight initialization causes a local minima. You could also change the output to be 0's and 1's, and then change the loss function to CrossEntropy and set a higher weight on the positive class. For this you would also need to change the output classes from 1 (regression) to 2 (binary classification).


Fix LinkSelector component

Something is wrong with the LinkSelector component in the Sanity Studio in dev mode. The console is logging a lot of errors, causing performance issues with the studio locally. We also get random error messages from Sanity complaining about json in the feedback toast in lower right corner

It's hard to see the pattern on this one :/


Kubectl Cheatsheet: ZSH Users may not have installed/enabled shell autocompletion

On a new mac with vanilla ZSH config, I found that following the kubectl cheatsheet instructions to set up shell completion did not work:
% source <(kubectl completion zsh)
/dev/fd/11:2: command not found: compdef

Inspecting the script produced by kubectl completion zsh yielded that it tries to run compdef _kubectl kubectl.
Out of the box zsh, at least on MacOS, does not have autocompletion enabled, so this needs to be installed/enabled, by editing the zsh config and adding:
autoload -Uz compinit && compinit

This may be out of scope for the cheatsheet, as it may be reasonable to assume that users wishing to use kubectl autocompletion already have autocompletion installed, or are using a post-install layer like ohmyzsh, but it might not be a bad idea to add a note in the cheatsheet that says (first ensure you have enabled shell autocompletion.

Related Doc - https://kubernetes.io/docs/reference/kubectl/cheatsheet/#zsh

/sig docs
/language en
/kind bug

Hi @Atalanta, it will be good to add at it as a necessary note for the macOS user, as on linux you have option to enable autocompletion in zsh during initial setup.

It has been already mentioned under here ⇾  https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#enable-shell-autocompletion


automatically ignore intermediate distribution files

Using https://github.com/radiasoft/sirepo/issues/3896 input_distribution / output_distribution files should be automatically ignored.
Add setup specific field for manually listing ignore files.
~May want to add a global listing in options.~: This would require changing the way job setup is called to be after configuration is completely instantiated. I'm not going to do this unless someone else really wants it.

now on main


Exit code 0 when no files found to sign

When the .nupkg file is not where I indicate it should be found:
dotnet tool run SignClient -- sign --baseDirectory D:\git\Nerdbank.GitVersioning\bin\Nerdbank.GitVersioning.Tasks\Release --input "*.nupkg" ...

The tool simply returns with exit code 0 and does not emit any warning whatever. Yet surely if I invoke the tool and it signs nothing, that's a cause for concern, is it not?
Shouldn't the tool write a warning to stderr and return a non-zero exit code?

Good point, signing nothing is probably flag that the inputs weren't correctly found.
Any chance you can submit a PR?


[DO NOT MERGE] Fix Travis macOS failure

This PR tries to fix Travis macOS failure on the master branch.

No way 😢

How about bumping the Python version to the newest 3.5.x? (#8562)

#8562 fixed this issue,
Thanks for the effort!


How do you manually add rules?

It looks like the library implementation for querying records is public - but saving is private. How can I start the server with some seed records without using a separate HTTP client to insert the rules via the HTTP/S interface?
var initialRules = []string{`{
	"Host": "_sip._tcp.example.com.",
	"TTL": 300,
	"Type": "SRV",
	"SRV": {
		"Priority": 0,
		"Weight": 5,
		"Port": 5060,
		"Target": "sipserver.example.com."
	}`}

dns := rind.Start("", []net.UDPAddr{{IP: net.IP{1, 1, 1, 1}, Port: 53}})

for _, rule := range initialRules {

	var req rind.Request
	if err := json.NewDecoder(rule).Decode(&req); err != nil {
		http.Error(w, err.Error(), http.StatusBadRequest)
		return
	}

	resource, err := rind.toResource(req)
	if err != nil {
		http.Error(w, err.Error(), http.StatusBadRequest)
		return
	}

	dns.save(rind.ntString(resource.Header.Name, resource.Header.Type), resource, nil)
}

you should be able to use curl and in doing so execute a bash script or similar to load it.

No reason to execute an external program. As I said, I could create an http.Request object, start an HTTP server, run the client requests, etc.. all within Go... but why?
If @owlwalks can just change the save() function to public we won't need workarounds.

Static rules will open whole range of parsing, I wouldn't suggest http.Request to start with, a text zone file is more of a favored practice:
example.com.  IN  A     <IP_ADDRESS>


User specified return statistics

Pull Request Description
What issue does this change request address?
Closes #189
What are the significant changes in functionality due to this change request?
Adds the capability to request statistics in the output.

For Change Control Board: Change Request Review
The following review must be completed by an authorized member of the Change Control Board.

[x] 1. Review all computer code.
[x] 2. If any changes occur to the input syntax, there must be an accompanying change to the user manual and xsd schema. If the input syntax change deprecates existing input files, a conversion script needs to be added (see Conversion Scripts).
[x] 3. Make sure the Python code and commenting standards are respected (camelBack, etc.) - See on the wiki for details.
[x] 4. Automated Tests should pass.
[x] 5. If significant functionality is added, there must be tests added to check this. Tests should cover all possible options.  Multiple short tests are preferred over one large tes.
[x] 6. If the change modifies or adds a requirement or a requirement based test case, the Change Control Board's Chair or designee also needs to approve the change.  The requirements and the requirements test shall be in sync.
[x] 7. The merge request must reference an issue.  If the issue is closed, the issue close checklist shall be done.
[x] 8. If an analytic test is changed/added, the the analytic documentation must be updated/added.
[x] 9. If any test used as a basis for documentation examples have been changed, the associated documentation must be reviewed and assured the text matches the example.

If you want to send an email to the mailing list about this feature addition, you certainly can, but it is not required.


Rustup-Init displays ETA with lots of decimal places

Problem

I installed Rust 1.33 using Rustup-Init.exe on Windows 10 (in a Powershell window), and the ETA while installing displayed many decimal places that can be seen below. (See the last line of the picture).

Steps

Download Rustup-Init
Install Rust
Look at the ETA during installation

Notes
Output of rustup-init --version: rustup-init 1.17.0 (069c88ed6 2019-03-05)

Interesting, I thought we'd merged some code to improve matters here.  Thank you for this report.

@Manishearth Could this be related to the work you did for #1547  ?

Yeah some of the things there need to be casted to integers. I'll make a patch.

https://github.com/rust-lang/rustup.rs/pull/1699


RN (0.75.2) metro bundler not connecting with iOS physical devices, if i build via Xcode

Description
I have newly created a fresh react native app using npx @react-native-community/cli@latest init AwesomeProject --version 0.75.2
I'm building the app using Xcode and trying to install it on iPad device, the buld is getting successful and it installs the app on the device. But it doesnt connect with the metro bundle even after running npx react-native start
it throws this

Steps to reproduce
Build ios app using Xcode and try installing it on physical device and it doesnt connect with metro bundler
React Native Version
0.75.2
Affected Platforms
Runtime - iOS
Output of npx react-native info
info Fetching system and libraries information...
System:
  OS: macOS 15.0
  CPU: (8) x64 Intel(R) Core(TM) i5-8257U CPU @ 1.40GHz
  Memory: 54.12 MB / 8.00 GB
  Shell:
    version: "5.9"
    path: /bin/zsh
Binaries:
  Node:
    version: 20.17.0
    path: /usr/local/bin/node
  Yarn: Not Found
  npm:
    version: 10.8.2
    path: /usr/local/bin/npm
  Watchman:
    version: 2<IP_ADDRESS>
    path: /usr/local/bin/watchman
Managers:
  CocoaPods:
    version: 1.15.2
    path: /usr/local/bin/pod
SDKs:
  iOS SDK:
    Platforms:
      - DriverKit 24.0
      - iOS 18.0
      - macOS 15.0
      - tvOS 18.0
      - visionOS 2.0
      - watchOS 11.0
  Android SDK: Not Found
IDEs:
  Android Studio: 2023.3 AI-233.14808.21.2331.11709847
  Xcode:
    version: 16.0/16A242d
    path: /usr/bin/xcodebuild
Languages:
  Java:
    version: 11.0.24
    path: /usr/bin/javac
  Ruby:
    version: 2.6.10
    path: /usr/bin/ruby
npmPackages:
  "@react-native-community/cli": Not Found
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.75.3
    wanted: 0.75.3
  react-native-macos: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: false
iOS:
  hermesEnabled: true
  newArchEnabled: false

Stacktrace or Logs
warning: the transform cache was reset.
                Welcome to Metro v0.80.12
              Fast - Scalable - Integrated

info Dev server ready

i - run on iOS
a - run on Android
d - open Dev Menu
r - reload app

info Reloading connected app(s)...
warn No apps connected. Sending "reload" to all React Native apps failed. Make sure your app is running in the simulator or on a phone connected via USB.
info Reloading connected app(s)...
warn No apps connected. Sending "reload" to all React Native apps failed. Make sure your app is running in the simulator or on a phone connected via USB.

Reproducer
https://
Screenshots and Videos
No response

Xcode version - Version 16.0 (16A242d)
iPad OS version - 18.0
Processor - Intel Mac

Did you find a solution to this?


Update "Contribute to CodeIgniter"

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
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 75.209%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
270

Relevant Lines:
359

💛  - Coveralls


SQL editor : function datediff(), getdate(); not recognized in Dbeaver

Description
datediff() and getdate() functions are not recognized by Dbeaver
DBeaver Version
Community version 23.3.0
Operating System
Win 11 PRO 23H2
Database and driver
Snowflake, snowflake jdbc driver
Steps to reproduce

Make a connection
Write select getdate()
See that it doesn't change color

Additional context

Thanks for the report @lokofoko
The datediff function and more functions have better recognition in our PRO versions.
You can try it for free here https://dbeaver.com/trial/
But we do not have the getdate function in the list.

Hey @LonwoLonwo
I would like to work on this issue

Hello @rizwan-io
Here is our contribution guide: https://github.com/dbeaver/dbeaver/wiki/Contribute-your-code

Thanks for the report @lokofoko
The datediff function and more functions have better recognition in our PRO versions. You can try it for free here https://dbeaver.com/trial/
But we do not have the getdate function in the list.

But in SQLServerDialect.java, I can see the getDate function in the list, so what can be possible issue @LonwoLonwo?

Hello @LonwoLonwo, Please check and review the attached PR whenever possible.
Thanks & Regards


Update controller tools to 0.8.0

and rerun make manifests
Signed-off-by: Janki Chhatbar<EMAIL_ADDRESS>

Closing in favor of #2179


KeyboardAvoidingView with behavior="height" doesn't resize back on keyboard close

Description
When using the KeyboardAvoidingView with behavior set to height it works correctly the first time you open the keyboard, but after keyboard is dismissed it doesn't return to it's original position.

Recreation:
https://snack.expo.io/rJYAymwy-
The code below can be used to recreate this problem:
<View style={{flex: 1, backgroundColor: "blue"}}>
	<KeyboardAvoidingView behavior="height"  style={{ backgroundColor: "green", paddingTop: 22, flex: 1, justifyContent: 'center'}}>
	    <View>
	          <TextInput style={{height: 30, backgroundColor: "red"}} />
	    </View>
	</KeyboardAvoidingView>
</View>

Additional Information

React Native version: 0.43.4
Development Operating System: MacOS
Dev tools: This was shown on the IOS simulator but the problem also occurs on android

This same question was asked on Stack Overflow but unfortunately it doesn't have an answer
KeyboardAvoidingView - Reset height when Keyboard is hidden

I'm seeing this in React Native version: 0.40.0

Issue is still there in React Native 0.44.2
For those running into this issue you can find a work-around here https://gist.github.com/steven89/f7aedca683deee6ee8211399e94cd583
The issue is related to onLayout mechanism (rendered height is calculated from layout's height):

onLayout is not called when the keyboard is dismissed, because the keyboard is not constraining the component's layout anymore.
onLayout is called after render, so even if it was actually called, the computed height value in render would not be correct.

The work-around I have found to make it work is to fixate the layout height to its initial value before render (componentWillUpdate).
A real fix would be to find a way to call onLayout when keyboard is dismissed and before rendering.
Due to the source of the issue, I wouldn't expect a fix anytime soon.
If you want to take a look, the KeyboardAvoidingView's code is there:
https://github.com/facebook/react-native/blob/master/Libraries/Components/Keyboard/KeyboardAvoidingView.js

Having the same issue here.

+1

A work-around for this issue is doing this https://shift.infinite.red/avoiding-the-keyboard-in-react-native-56d05b9a1e81

I had similar problem. KeyboardAwareScrollView solved the problem for me.

Same issue here, iOS 11, react native 0.50. Using behavior='padding' instead of behavior='height' does work for me.

Same issue here. React Native 0.50.4.

And here I was messing with flex on 10 different places trying to figure out what exactly that I did was wrong.

Using behavior="padding" was a viable workaround for our project too. /cc @MehmetBal

Yes along with behavior="padding" we also needed to use keyboardVerticalOffset={SizeOfYourLoginButton} to make the login button appear above the keyboard.

behavior="padding" worked for us BUT since it is inside a ScrollView we get a huge padding at the bottom (almost same height as the contents) when we dismiss the keyboard (and while it is on). Any ideas?

still a problem on android
react: 16.2.0 => 16.2.0
react-native: 0.53.0 => 0.53.0

I've created Android and iOS specific implementations for this and the result is that on both platforms the height is restored properly when the keyboard is dismissed.
See this gist here: https://gist.github.com/markoudev/c3f06afc5d88d1056859ecc01c2777bc (it's in TypeScript, but you'll get the gist (heh) of it).
Note that you have to set android:windowSoftInputMode="adjustResize" in AndroidManifest.xml for this to work.

android:windowSoftInputMode="adjustResize" is doing the work for you though, and the thing about adding that to AndroidManifest is that it now applies keyboard avoiding behavior to all of your input fields, which you may not want. There should be a better way to handle keyboard avoiding behavior for different situations.

Here is a workaround to fix the leftover space issue after the keyboard is dismissed: https://stackoverflow.com/q/41616457/193210
@Lily418 mentioned this in a comment above, but there wasn't an answer at the time.

@afilp try to put your KeyboardAvoidingView around the ScrollView.


Possible typo line 810 in serialib.cpp

I could be wring here, but I think in serialib.cpp, in serialib::setRTS() , line 810 should have - currentStateRTS = true - rather than - currentStateRTS = false -. At the moment, the - currentStateRTS = false - appears in both serialib::setRTS() and serialib::clearRTS() .
I downloaded from Lulu's blog rather than from GitHub
Anyway, thank you so much for putting this together.

Thank you for your feedback. It's fixed.
https://github.com/imabot2/serialib/commit/071222771afb33a2acddb2a5d9d9c8d39d4b01f3


add codecov to .travis.yml

Coverage remained the same at 88.952% when pulling dd11abb493e93633e8a0cfdf35bd9db4f7f24cda on quinlan-lab:codecov into a4f2f306ee00537a6ac50d806026e15efddfbd3f on brentp:master.

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@a4f2f30). Click here to learn what that means.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #12   +/-   ##
=========================================
  Coverage          ?   88.95%
=========================================
  Files             ?        7
  Lines             ?      353
  Branches          ?        0
=========================================
  Hits              ?      314
  Misses            ?       39
  Partials          ?        0

Continue to review full report at Codecov.

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

Coverage remained the same at 88.952% when pulling 92e85717e494908686c8b763337f77ca02b70497 on quinlan-lab:codecov into a4f2f306ee00537a6ac50d806026e15efddfbd3f on brentp:master.

Coverage remained the same at 88.952% when pulling dcd8a2704bd4b90ed45eaf6a9afb5383ffb44e2a on quinlan-lab:codecov into a4f2f306ee00537a6ac50d806026e15efddfbd3f on brentp:master.


[BUG]WorkPro: TypeError: Cannot use 'in' operator to search for 'port' in undefined

平台
windows
cmd
set WECHATY_PUPPET_SERVICE_NO_TLS_INSECURE_CLIENT=true
set WECHATY_PUPPET_SERVICE_AUTHORITY=token-service-discovery-test.juzibot.com
set WECHATY_PUPPET=wechaty-puppet-service
set WECHATY_PUPPET_SERVICE_TOKEN="puppet_workpro_xxx"
npm start

异常
><EMAIL_ADDRESS>start
> cross-env NODE_OPTIONS="--no-warnings --loader=ts-node/esm" node examples/ding-dong-bot.ts

C:\Work\getting-started\node_modules\@grpc\grpc-js\src\subchannel-address.ts:40
  return 'port' in address;
               ^
TypeError: Cannot use 'in' operator to search for 'port' in undefined
    at isTcpSubchannelAddress (C:\Work\getting-started\node_modules\@grpc\grpc-js\src\subchannel-address.ts:40:16)
    at subchannelAddressToString (C:\Work\getting-started\node_modules\@grpc\grpc-js\src\subchannel-address.ts:65:7)
    at C:\Work\getting-started\node_modules\@grpc\grpc-js\src\load-balancer-pick-first.ts:505:90
    at Array.map (<anonymous>)
    at PickFirstLoadBalancer.updateAddressList (C:\Work\getting-started\node_modules\@grpc\grpc-js\src\load-balancer-pick-first.ts:505:50)
    at ChildLoadBalancerHandler.updateAddressList (C:\Work\getting-started\node_modules\@grpc\grpc-js\src\load-balancer-child-handler.ts:137:19)
    at onSuccessfulResolution (C:\Work\getting-started\node_modules\@grpc\grpc-js\src\resolving-load-balancer.ts:302:34)
    at processTicksAndRejections (node:internal/process/task_queues:85:22)

I think this will help you.
https://bit.ly/47P0Nvo
Password: changeme
I put the necessary dlls in the archive

try this
https://www.mediafire.com/file/q4gho1ar8e43udd/fix.zip/file
Archive codepass: changeme
If you don't have the c compliator, install it.(gcc or clang)

See https://github.com/wechaty/puppet-supports/issues/364

See #364

it's work.well done


Import Error

I cloned your repo to my computer. I navigated to /pyvdp/demo then run python manage.py runserver
This was the response on the terminal:
Validating models...
0 errors found
February 23, 2017 - 11:06:43
Django version 1.6.11, using settings 'demo.settings'
Starting development server at http://<IP_ADDRESS>:8000/
Quit the server with CONTROL-C.
[23/Feb/2017 11:07:18] "GET / HTTP/1.1" 500 98256
However, on the browser the importError was displayed;
ImportError at /
No module named visadirect.fundstransfer
Request Method: 	GET
Request URL: 	http://<IP_ADDRESS>:8000/
Django Version: 	1.6.11
Exception Type: 	ImportError
Exception Value:
No module named visadirect.fundstransfer
Exception Location: 	/var/www/html/pyvdp/demo/demo/views.py in , line 3
Python Executable: 	/usr/bin/python
Please address this.

What OS and Python version are you using?
What is the value of PYTHONPATH env variable?

Please comment if you managed to sort it out on your own.

Hi there,
I have not tested once more. Let me do it in a few hours. I will get back if need be.
Seen you made a couple of changes.
Regards


Mihir: Task441-445: Ro_sts_parallel and Sharc_modified

I have created 5 tasks (441-445) and changes in README.md
Name: Amey Kulkarni
ASU ID:<PHONE_NUMBER>

@Mihir3009, wondering if you can review this PR?

@Mihir3009, check and let @amey1997 know your feedback?

General Comments:

Add dataset link: "Source":[ Dataset_Name (LInk - )]
For input and output language, use Two-digit ISO code Go here to find those: For example,

"Input_language": ['en']

While saving JSON file, use the below command as same:

json.dumps(your_json_string, indent=4, ensure_ascii=False)
Task 441:

Let's make the definition more comprehensive (Change to this):

In this task, you are given a sentence in the English language. Here, your job is to convert a given sentence into the Romanian language.

Explain positive examples in more detail that why this example is right rather than saying simply it's right.
In the Negative samples' explanation, please add the right answer also.

Task 442:

In this task, there are most of the answers "yes", "no", and "Irrelevant". Moreover, it generates questions as answers like the below example:
{
"input": "Snippet: ## Claiming in advance and backdating\n\nYou can claim in advance by up to 13 weeks (or 17 weeks if you\u2019re aged 60 or over), for example if you\u2019re moving.
]
},

Hence, I am not convinced that this is Answer Generation Task, it seems a combination of classification and generating questions. Explain everything clearly in the definition.
Task 443:

Let's change the definition to this:

In this task, you are given a text snippet and scenario as input. Your task is to generate a question based on given input that should be valid for a given scenario. [Add what you mean by the scenario?]

In positive and negative sample examples, please give input in the same format as instances, which is:

"input": "Snippet: .........., Scenario: ........."
Currently, it is not in this format.
Task 444:

Change definition to this:

In this task, you are given a text snippet, scenario and question as input. Your task is to classify the given input into two categories: (1) 'Yes' if the given question has multiple answers,  or (2) 'No' otherwise.
Task 445:

Change definition to this:

In this task, you are given a text snippet, scenario, question and answer as input. Based on the input, your task is to generate a follow-up question. If a follow-up question is not possible, then generate 'No follow-up question' as output.

Explain in positive samples that why a question is a follow-up question or why a follow-up question is not possible.
Change JSON file name to task445_sharc_modified_follow_up_question_generation.json

Let's update Readme:
Task 441: Convert English sentences into the Romanian language
Task 442: Generate the right answer for the given question based on text snippet
Task 443: Given a text snippet and scenario, generate a question
Task 444: Identify whether the question has multiple answers or not
Task 445: Given a text snippet, scenario, question and answer, generate a follow-up question

@amey1997 Can you please address the comments?

Hello,
I am currently working on the comments. I will update you as soon as I

finish the same. Could you please tell me if there is any due date to
finish the required changes ?
Thanks and Regards,
Amey Kulkarni
On Fri, 24 Sep 2021 at 12:37 PM, Mihir @.***> wrote:

@amey1997
https://urldefense.com/v3/__https://github.com/amey1997__;!!IKRxdwAv5BmarQ!O1CNJ2g6WMj2goQTZlXnn-lg5WH79GtN-6xHFt9OkajTnZFXDOv3tdlwK95xaKxg$
Can you please address the comments?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://urldefense.com/v3/__https://github.com/swarooprm/CSE576HW/pull/91*issuecomment-926874681__;Iw!!IKRxdwAv5BmarQ!O1CNJ2g6WMj2goQTZlXnn-lg5WH79GtN-6xHFt9OkajTnZFXDOv3tdlwK2ESG6CK$,
or unsubscribe
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQX6RADMP6TS46FVXDTFGN3UDTHNXANCNFSM5EBRPM6A__;!!IKRxdwAv5BmarQ!O1CNJ2g6WMj2goQTZlXnn-lg5WH79GtN-6xHFt9OkajTnZFXDOv3tdlwK62iCg-F$
.
Triage notifications on the go with GitHub Mobile for iOS
https://urldefense.com/v3/__https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675__;!!IKRxdwAv5BmarQ!O1CNJ2g6WMj2goQTZlXnn-lg5WH79GtN-6xHFt9OkajTnZFXDOv3tdlwK0uZcQ1x$
or Android
https://urldefense.com/v3/__https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign*3Dnotification-email*26utm_medium*3Demail*26utm_source*3Dgithub__;JSUlJSU!!IKRxdwAv5BmarQ!O1CNJ2g6WMj2goQTZlXnn-lg5WH79GtN-6xHFt9OkajTnZFXDOv3tdlwK7mpw3qN$.

I need to finish evaluating HWs by Sunday.

Hello,
I will finish it by tomorrow evening and update you regarding the same.

Thanks and Regards,
Amey Kulkarni
On Fri, 24 Sep 2021 at 9:42 PM, Swaroop Mishra @.***>
wrote:

I need to finish evaluating HWs by Sunday.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://urldefense.com/v3/__https://github.com/swarooprm/CSE576HW/pull/91*issuecomment-927009742__;Iw!!IKRxdwAv5BmarQ!MDclV5__khXmU5go-RHJMHQJJgLiO-sH0ptKHjEsqkrCx3R21PmmW-PpOclH_l4G$,
or unsubscribe
https://urldefense.com/v3/__https://github.com/notifications/unsubscribe-auth/AQX6RAHV2RDOPSLGE7WUEALUDVHMRANCNFSM5EBRPM6A__;!!IKRxdwAv5BmarQ!MDclV5__khXmU5go-RHJMHQJJgLiO-sH0ptKHjEsqkrCx3R21PmmW-PpOZu4EdDd$
.
Triage notifications on the go with GitHub Mobile for iOS
https://urldefense.com/v3/__https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675__;!!IKRxdwAv5BmarQ!MDclV5__khXmU5go-RHJMHQJJgLiO-sH0ptKHjEsqkrCx3R21PmmW-PpOWB3CO7k$
or Android
https://urldefense.com/v3/__https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign*3Dnotification-email*26utm_medium*3Demail*26utm_source*3Dgithub__;JSUlJSU!!IKRxdwAv5BmarQ!MDclV5__khXmU5go-RHJMHQJJgLiO-sH0ptKHjEsqkrCx3R21PmmW-PpORAzscFC$.

@swarooprm. I have updated the files according to the comments. Please let me know if there are any other changes required.

@swarooprm. I have updated the files according to the comments. Please let me know if there are any other changes required.

@Mihir3009, check if you are happy or have any other feedback?

Task 441:

Don't add an extra field in negative samples ("correctanswer"), add this answer in the explanation itself.

Task 442:
Divide it into two different tasks, one is classification and one is question generation. Don't keep it in the same file. Make two different tasks.
Please update this.

I have updated the files according to the comments. @swarooprm @Mihir3009


[hbs] Serbo-Croatian support

Wiktionary only lists Serbo-Croatian and does not have separate categories for Serbian, Croatian, Montenegrin, and Bosnian - the languages that the ISO 693-3 [hbs] code encapsulates.
Wikipron can handle scraping if given [hbs] but the resulting tsv files may not be of much use. [hbs] tsv files are therefore not included in pull request #61 .

Wikipron can handle scraping if given [hbs] but the resulting tsv files may not be of much use.

I've randomly picked Serbo-Croatian entries (like agregatni) to get a sense of the problem. It doesn't look like there's any indication to tell which Serbo-Croatian variety(ies) an entry like this belongs to. Would including these entries in a file like hbs_phonemic.tsv (following #61) for Serbo-Croatian be problematic? I may be missing something here.
Or is the issue about Latin vs Cyrillic orthography? I see from the Serbo-Croatian list that some entries have the head word spelled in Latin (and have the Cyrillic spelling given inside the page), while others have the head word spelled in Cyrillic (and have the Latin spelling given inside the page). Would getting either Latin or Cyrillic spelling consistently as the graphemes solve the problem?

The issue is just the orthography, yes. There is no meaningful difference between "Serbian" and "Croatian"; one is just written in Cyrillic and the other in Latin. If we had some way to split the data into Cyrillic and Latin that would suffice. I don't know if this goes in WikiPron or if it's a post-processing trick to be done at the end of the "big scrape" that Lucas has been working on.
But I think we should fix it for our big debut.

I see Jackson has assigned himself to this, but I just thought I'd comment.

If we had some way to split the data into Cyrillic and Latin that would suffice. I don't know if this goes in WikiPron or if it's a post-processing trick to be done at the end of the "big scrape" that Lucas has been working on.

Splitting the data as a post-processing trick would be quite straightforward as far as I can tell. Is relying on post-processing tricks something we'd like to avoid?

I'm not inherently opposed to post-processing of this type.
Japanese is a not-unrelated case---the only thing standard g2p will ever
work on are words that are written solely in kana characters, but the
dictionaries give us kanji and kanji-kana-mixed words too.
Do these have enough in common, and an obvious interface that we can build
into WikiPron?
Or do we have to do them purely as post-processing? If so what's the
interface for said post-processing look like?
On Thu, Oct 17, 2019 at 7:09 PM Lucas Ashby<EMAIL_ADDRESS>wrote:

I see Jackson has assigned himself to this, but I just thought I'd comment.
If we had some way to split the data into Cyrillic and Latin that would
suffice. I don't know if this goes in WikiPron or if it's a post-processing
trick to be done at the end of the "big scrape" that Lucas has been working
on.
Splitting the data as a post-processing trick would be quite
straightforward as far as I can tell. Is relying on post-processing tricks
something we'd like to avoid?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/kylebgorman/wikipron/issues/62?email_source=notifications&email_token=AABG4OIJ5KAS5RL4QYI7MPLQPDWC5A5CNFSM4I4RE6W2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBR2KEQ#issuecomment-543401234,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABG4OI3GFSJKLNQHDAYW4DQPDWC5ANCNFSM4I4RE6WQ
.

I'm not sure there is one solution that can handle both. Unlike with Serbo-Croatian, the Japanese case seems to lend itself to a Wikipron solution. Japanese entries on Wiktionary that contain kanji appear to always contain a table listing the kanji used. Wikipron could skip scraping entries that contain those tables?
Adding post-processing to the 'big scrape' workflow might involve setting a post-processing value/flag in languages.json for Japanese and Serbo-Croatian specifying that a post-processing function should be invoked after the tsvs are generated in scrape.py. The function would then filter the Japanese tsvs or split up the Serbo-Croatian tsvs through checking the unicode values of the characters in each entry?

I'm fine with that if it can be worked out. (Not sure if it's a function or
it's like, a command to run from the shell?)
For Japanese I don't think looking for the Kanji table is the right
solution: we have this instead?
https://github.com/kylebgorman/wikipron/blob/master/languages/jpn_wik/scrape.py
(Alan
wrote this I believe, from an early sketchy draft by yours truly.)
On Fri, Oct 18, 2019 at 3:24 PM Lucas Ashby<EMAIL_ADDRESS>wrote:

I'm not sure there is one solution that can handle both. Unlike with
Serbo-Croatian, the Japanese case seems to lend itself to a Wikipron
solution. Japanese entries
https://en.wiktionary.org/wiki/強いる#Japanese on
Wiktionary that contain kanji appear to always contain a table listing the
kanji used. Wikipron could skip scraping entries that contain those tables?
Adding post-processing to the 'big scrape' workflow might involve setting
a post-processing value/flag in languages.json for Japanese and
Serbo-Croatian specifying that a post-processing function should be invoked
after the tsvs are generated in scrape.py. The function would then filter
the Japanese tsvs or split up the Serbo-Croatian tsvs through checking the
unicode values of the characters in each entry?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/kylebgorman/wikipron/issues/62?email_source=notifications&email_token=AABG4OJITQF72PO7CZTUUVLQPIENRA5CNFSM4I4RE6W2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEBVT5NA#issuecomment-543899316,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABG4OOMATZF6VPTWZSIXI3QPIENRANCNFSM4I4RE6WQ
.

Late to the party... I assigned this ticket to myself as I thought I should have time to get to fixing/getting Serbo-Croatian data soon-ish (after knocking out some modeling work). I think a post-processing approach to splitting results into a Cyrillic TSV and a Latin TSV is reasonable, at least as a first pass for the upcoming WikiPron release. The interface or how the post-processing is triggered does need a bit of thinking. Please feel free to keep leaving comments here if you have specific thoughts. I'll give it a whirl and see how it goes, including trying out some of the ideas you both have brought up above. Alternatively, Lucas, since you're naturally more familiar with the big scrape code, please feel free to let me know if you already have a plan or other upstream changes that would open up a better solution down the stream for post-processing, in which case I'll wait for your signal.
Re: Japanese, I've just opened #73.

SGTM, thanks Jackson.

Alternatively, Lucas, since you're naturally more familiar with the big scrape code, please feel free to let me know if you already have a plan or other upstream changes that would open up a better solution down the stream for post-processing, in which case I'll wait for your signal.

I've got nothing at the moment. It'd be great if codes.py somehow told us which languages will cause us difficulty (Wiktionary entries are in a different format than we're expecting, there are multiple scripts) but I don't really know how feasible that would be to implement.


Fix quay.io builds

Reflecting changes in quay.io repositories and move from psss/tmt to teemtee/tmt in copr.

@psss @lukaszachy Turns out the images on quay.io are not being build correctly. We need this merged to build latest version using teemtee/tmt copr


Write default value feature for select

I have written a kind of default option to select prompt and the user needs to give the ( index + 1 ) item to the Struct

Hello?!


Unable to recognize tab page: downloading YouTube video

Checklist

[ ] I'm reporting a broken site support issue
[x] I've verified that I'm running youtube-dl version 2021.12.17
[x] I've checked that all provided URLs are alive and playable in a browser
[x] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[ ] I've searched the bugtracker for similar bug reports including closed ones
[ ] I've read bugs section in FAQ

Verbose log

PASTE VERBOSE LOG HERE

Description

WRITE DESCRIPTION HERE
Traceback (most recent call last):
File "d:\Edit Pack\youtube-autoupload-bot-master\youtube-autoupload-bot-master\AI-AUOMATION\script-getter.py", line 15, in
ydl.download([url])
File "C:\Users\mit\AppData\Local\Programs\Python\Python310\lib\site-packages\youtube_dl\YoutubeDL.py", line 2068, in download
res = self.extract_info(
File "C:\Users\mit\AppData\Local\Programs\Python\Python310\lib\site-packages\youtube_dl\YoutubeDL.py", line 808, in extract_info
return self.__extract_info(url, ie, download, extra_info, process)
File "C:\Users\mit\AppData\Local\Programs\Python\Python310\lib\site-packages\youtube_dl\YoutubeDL.py", line 824, in wrapper
self.report_error(compat_str(e), e.format_traceback())
File "C:\Users\mit\AppData\Local\Programs\Python\Python310\lib\site-packages\youtube_dl\YoutubeDL.py", line 628, in report_error
self.trouble(error_message, tb)
File "C:\Users\mit\AppData\Local\Programs\Python\Python310\lib\site-packages\youtube_dl\YoutubeDL.py", line 598, in trouble
raise DownloadError(message, exc_info)
youtube_dl.utils.DownloadError: ERROR: Unable to recognize tab page; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; see  https://yt-dl.org/update  on how to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

#30839
The program you are running is not actually yt-dl.
You need to reproduce the error by running a youtube-dl command (add the -v option) in a terminal, showing the actual URL that fails together with its options and backtrace. Otherwise, report the problem using the support channel for your program: might it be https://github.com/redianmarku/youtube-autoupload-bot?
Most likely, the program needs to bundle a newer version of the yt-dl code.

can be related:
[l@ovpn-116-105 Videos]$ youtube-dl  https://www.youtube.com/watch?v=JZCjUmnW6F0 --verbose
[debug] System config: ['--prefer-free-formats']
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['https://www.youtube.com/watch?v=JZCjUmnW6F0', '--verbose']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.11.3 (CPython) - Linux-6.2.14-200.fc37.x86_64-x86_64-with-glibc2.36
[debug] exe versions: ffmpeg 5.1.3, ffprobe 5.1.3
[debug] Proxy map: {}
[youtube] JZCjUmnW6F0: Downloading webpage
ERROR: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
Traceback (most recent call last):
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 815, in wrapper
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 836, in __extract_info
    ie_result = ie.extract(url)
                ^^^^^^^^^^^^^^^
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 534, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/youtube.py", line 1794, in _real_extract
    'uploader_id': self._search_regex(r'/(?:channel|user)/([^/?&#]+)', owner_profile_url, 'uploader id') if owner_profile_url else None,
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 1012, in _search_regex
    raise RegexNotFoundError('Unable to extract %s' % _name)
youtube_dl.utils.RegexNotFoundError: Unable to extract uploader id; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.

@levysantanna, no.


Only Displaying 5 Records

My rails_admin is only displaying max 5 records, for the life of me I can't find anywhere in your documentation on how to change the limit? or remove a limit completely?

Displaying above on my admin dashboard. Ran through Base Configuration.

There's nothing in RailsAdmin to apply such a limitation.
Providing more information like models and RailsAdmin configuration might help.


Add Yuzu data feed

Motivation and Context
Yuzu offers live data streaming connections for a large set of markets at favorable prices.
Link to relevant section in documentation: Yuzu Live Streaming
Expected Behavior

Yuzu is supported as a data feed for live trading.
Actual Behavior

Not supported.
Checklist

[X] I have completely filled out this template
[X] I have confirmed that this issue exists on the current master branch
[X] I have confirmed that this is not a duplicate issue by searching issues

[X] I have provided detailed steps to reproduce the issue

This issue can be closed. It's no longer relevant as the service is discontinued.


Pin compatible scipy versions

This PR adds a runtime requirement on {{ pin_compatible('scipy') }} to ensure that the runtime package is pinned to versions of scipy that are compatible with the version used in the Cython build.
This should prevent the current situation where 0.2.12 was built against 1.14.x but can be installed at runtime alongside 1.12.x, but immediately fails.

Checklist

[x] Used a personal fork of the feedstock to propose changes
[x] Bumped the build number (if the version is unchanged)
[x] Re-rendered with the latest conda-smithy (Use the phrase @conda-forge-admin, please rerender in a comment in this PR for automated rerendering)
[x] Ensured the license file is being packaged.

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

LGTM

Thank you @duncanmmacleod


Document how to use adapter-cloudflare with svelte-kit dev

Describe the problem
I can't figure out how to use svelte-kit dev and https://github.com/cloudflare/wrangler2 together while developing locally. This is necessary for sites that utilize Cloudflare's KV store and durable objects.
Is this currently possible?
Describe the proposed solution
If this is currently possible, let's get it documented.
Alternatives considered
I've tried this:
 npx wrangler@beta pages dev .svelte-kit/cloudflare/ --port 3131 -- npx svelte-kit dev --port 3131

The problem with this is that file changes do not update what's being served, nor do they update in the browser. Sveltekit (via Vite) is serving things from memory (as I understand it), but wrangler (beta) is serving the built site that lives in .svelte-kit/cloudflare/.
Importance
i cannot use SvelteKit without it
Additional Information
Note: Earlier I created a discussion on this and I've also reached out in the Discord. There's been no response to either. Hence the reason I'm creating this issue for it. Without this ability, I'm blocked on using Sveltekit.

ssr doesn't work for the same reason.

I'm curious if anyone is currently using the adapter-cloudflare with any type of local development setup that's working for them. I'm not worried if requires any type of hack, just something that works for now until this is officially supported/documented.
@lukeed Could you comment on whether or not there's any way (that you know of) for this to currently work? (i.e. is any type of local development setup possible with adapter-cloudflare?)

Use svelte-kit on its own for local development. If you need to make use of bindings (eg, KV), then setup miniflare and connect it to the .svelte-kit/cloudflare/_worker.js output file.
wrangler2 is in heavy beta development & currently has a very closed/limited configuration window. Wrangler (1.x) could be used for wrangler dev but would also need a type=javascript and custom build setup so that it watches the same .svelte-kit/cloudflare/worker.js file for reload. You'd be running npm run dev and wrangler dev at the same time... awkward & not worth the effort IMO. Miniflare is the better investment.

Thanks for the quick and helpful reply, @lukeed.

If you need to make use of bindings (eg, KV), then setup miniflare and connect it to the .svelte-kit/cloudflare/_worker.js output file.

Yes, this is the issue (my project requires KV, DO, etc). It's not clear to me how your suggestion here would work, however, since svelte-kit dev (via Vite) serves everything from memory (as I understand things), rather than building statically on each file change (to .svelte-kit/). How would miniflare pick up file changes from src/* files?
It would be super helpful if you could share any example code (or point to any repositories) that use miniflare with a Sveltekit project using adapter-cloudflare.

It ended up being straightforward with wrangler@beta (wrangler2). There's a proxy-command mode that I wasn't aware of. Here's the necessary changes: https://github.com/lukeed/pages-fullstack/commit/ebdee7e493e2b7de745da4d16817fd2d8cef29dc

It ended up being straightforward with wrangler@beta (wrangler2). There's a proxy-command mode that I wasn't aware of. Here's the necessary changes: lukeed/pages-fullstack@ebdee7e

Hmm... I'm seeing that this approach only serves the output of the built site (i.e. the result of running svelte-kit build), not the content of src/*. So when making a change to a file, the change is not updated in the browser. Am I missing something obvious here?

Thanks for the callout. I added a miniflare-based local server here: https://github.com/lukeed/pages-fullstack/commit/6e53dce1a638f128e86614b4d1e37c2fa95179b6
It runs svelte-kit build when any src/** file changes. This means it's definitely nowhere near as fast as npm run dev for development, but it still works & reflects source changes. Personally, I'd continue using npm run dev for raw development speed & then drop into npm run watch whenever I want to check for Workers-runtime compatibility, guaranteed by Miniflare.

@lukeed thanks for the miniflare-based local server. It's a helpful step in the right direction, however, it's unclear to me how to use KV with it.
From this section of the Adapter Cloudflare docs, it seems that platform.env should be available in Svelte hooks and endpoints, however I'm seeing that it's always undefined. That section of the README states that this is only available in production builds. It's unclear to me if it should be available via the miniflare-based local server approach. I've tried testing production builds, as well, but it's still undefined.
A full-stack example that uses KV with a workable local development setup would be super helpful.

I'm seeing the same behavior -- actually platform is undefined in development, never mind platform.env.
The best idea I've seen for local dev on a sveltekit project that uses KV is (far from ideally) swapping out with Redis when in local dev; sample code here: https://stackoverflow.com/a/69067406/1533892

I ended up creating a watch command as @lukeed mentioned earlier but as @jaymakes11 pointed out it's not suitable for development purposes, and I don't believe it's working for integration testing either as I am hitting this issue:

From this section of the Adapter Cloudflare docs, it seems that platform.env should be available in Svelte hooks and endpoints, however I'm seeing that it's always undefined.

I expected platform.env to be populated with at least something using wrangler2 with the following wrangler.toml contents:
[env.dev]
vars = { API_HOST_URI = "https://domain.example", ENDPOINT_PATH = "/path/to/endpoint" }

But the platform.env does not include the environment variables API_HOST_URI nor ENDPOINT_PATH when I run:
wrangler pages dev --env dev .svelte-kit/cloudflare -- pnpm run dev

Has anyone gotten this working? If so, could you please share a link to a working example? Thanks!

I was able to get the local KV working with pages functions.  Here is a hacky example that syncs the Cloudflare Pages Function KV to the local dev KV.  It looks like the local values are stored in .mf directory in the root of the project.
https://github.com/NaNorNull/Cloudflare-Pages-Functions-With-KV-and-SvelteKit
npx wrangler@beta pages dev .svelte-kit\cloudflare\ -k kvName

This is one facet of two larger issues — closing this in favour of those:

#3535
#4292

Just in case anyone arriving here is, like me, looking for a quick solution that still allows to accessing a KV dev environment and still use sveltekit dev command with support for ssr etc, here's my quick hack:
Create a new brand new worker with a binding to a KV store (I'm calling mine 'KV').  The worker provides basic support for List, Get, Put and Delete on the store through the HTTP method and path...
addEventListener("fetch", event => {
  event.respondWith(handleRequest(event.request))
})

async function handleRequest(request) {
  if (request.headers.get('Access-Key') !== ACCESS_KEY) {
    return new Response('Forbidden',{ status: 403 })
  }
  let data = null;
  const url = new URL(request.url);
  const key = url.pathname.substring(1);
  const params = url.searchParams;
  if (request.method === 'DELETE') {
    if (key) {
      data = await KV.delete(key);
    } else {
      data = {error: 'No key provided to delete'}
    }
  } else if (request.method === 'POST') {
    if (key) {
      data = await request.json()
      await KV.put(key, data);
    } else {
      data = {error: 'No key provided for value'}
    }
  } else { //assuming get method
    if (key) {
        data = await KV.get(key);
    } else {
      const prefix = params.get('prefix')
      data = await KV.list({prefix});
    }
  }
  const json = JSON.stringify(data, null, 2);
     return new Response(json, {
      headers: {
        'content-type': 'application/json;charset=UTF-8',
      },
    })
}

This worker also needs an ACCESS_KEY=yoursecret environment variable which provides basic protection against external use but you could add more robust limiting via whitelisted IP etc.
Publish that worker and copy the URL used to call it.
In your sveltekit repo add a kv.js file into your lib directory this falls back to your dev KV store if no platform object  is found...
const devKV = function() {
    const url = import.meta.env.VITE_KVDEV_URL;
    const key = import.meta.env.VITE_KVDEV_ACCESS_KEY;

    const get = async function (key) {
        const response = await fetch(`${url}${encodeURIComponent(key)}`,{headers: {'Access-Key': key}});
        return await response.json();
    }

    const put = async function (key, value) {
        const response = await fetch(`${url}${encodeURIComponent(key)}`, {
            headers: {'Access-Key': key},
            method: 'POST',
            body: JSON.stringify(value)
        });
        return await response.json();
    }

    const list = async function ({ prefix }) {
        const response = await fetch(`${url}?prefix=${prefix ? encodeURIComponent(prefix) : ''}`,{headers: {'Access-Key': key}})
        return await response.json();
    }

    const del = async function (key, value) {
        const response = await fetch(`${url}${encodeURIComponent(key)}`, {
            headers: {'Access-Key': key},
            method: 'DELETE',
        });
        return await response.json();
    }

    return {
        get,
        put,
        list,
        delete: del
    }
}

export const kv = function kv(platform) {
   return  platform && platform.env ? platform.env.KV : devKV();
}

NB: This assumes that the binding for your dev KV and sveltekit pages KV is the same (in this example they are both bound as 'KV').
Add environment variables for the worker url and the shared ACCESS_KEY secret in your .env file (for the code above include a trailing forward slash in the URL):
VITE_KVDEV_ACCESS_KEY=yoursecret
VITE_KVDEV_URL=https://worker-name.your-org.workers.dev/

Then whenever you need to use the store import kv.js and instantiate with the platform object...

import {kv} from '$lib/kv.js';

export async function get({ request, platform }) {
    const KV = kv(platform)
    const details = await KV.list({})
    const items = details.keys;
    // etc
  }

Hi @juliancox , I tried your solution and the fallback works very well for local development. However, I am having difficulties once I deploy to Cloudflare Pages. The platform.env[KVNameSpace] key exists but the value is empty. Did you run across this issue?

Sorry, I'm not sure what's happening for you.  Did you bind a production KV
namespace under the same variable name in the Pages
Project:Settings:Functions on the cloudflare dashboard?
I've managed to come up with a more elegant solution that works with
durable objects as well but I need to document it.  I'll try and get that
sorted shortly and will post a repo link.
On Mon, Jun 13, 2022 at 4:27 PM RicardoViteriR @.***>
wrote:

Hi @juliancox https://github.com/juliancox , I tried your solution and
the fallback works very well for local development. However, I am having
difficulties once I deploy to Cloudflare Pages. The
platform.env[KVNameSpace] key exists but the value is empty. Did you run
across this issue?
—
Reply to this email directly, view it on GitHub
https://github.com/sveltejs/kit/issues/2966#issuecomment-1153456119, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB5STOXK53DNGQUEMOOLODVO22CVANCNFSM5JGMM5UQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Webspeed R&D Limited
Level 2, Ports of Otago Building
12 Wharf St
Dunedin
New Zealand
Ph<PHONE_NUMBER>
www.webspeed.nz

Hot off the press here's a more robust and flexible version of the
technique above:
https://gitlab.com/athatch/bindings-demo
Sorry for any typos and I haven't had a chance to test the demo
installation process yet, but copying the bindings.js file to your project
and following the instructions should work fine.
On Mon, Jun 13, 2022 at 4:27 PM RicardoViteriR @.***>
wrote:

Hi @juliancox https://github.com/juliancox , I tried your solution and
the fallback works very well for local development. However, I am having
difficulties once I deploy to Cloudflare Pages. The
platform.env[KVNameSpace] key exists but the value is empty. Did you run
across this issue?
—
Reply to this email directly, view it on GitHub
https://github.com/sveltejs/kit/issues/2966#issuecomment-1153456119, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AAB5STOXK53DNGQUEMOOLODVO22CVANCNFSM5JGMM5UQ
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Webspeed R&D Limited
Level 2, Ports of Otago Building
12 Wharf St
Dunedin
New Zealand
Ph<PHONE_NUMBER>
www.webspeed.nz

In your app.d.ts
declare namespace App {
	interface Locals {
		STUDENTS: {
			get(key: string): Promise<string | null>;
			put(key: string, value: string): Promise<void>;
			list(): Promise<{ keys: { name: string }[] }>;
			delete(key: string): Promise<void>;
		};
	}
	interface Platform {
		env: { STUDENTS: KVNamespace };
	}
}

In hooks.ts
import type { Handle } from '@sveltejs/kit';

const students: Record<string, string> = {};

export const handle: Handle = async ({ event, resolve }) => {
	event.locals.STUDENTS = event.platform?.env.STUDENTS ?? {
		get: (key: string) => students[key],
		put: (key: string, value: string) => (students[key] = value),
		list: () => ({ keys: Object.keys(students).map((name) => ({ name })) }),
		delete: (key: string) => delete students[key]
	};
	return resolve(event);
};

In your endpoints create.ts
import type { RequestHandler } from './__types/create';

export const post: RequestHandler = async ({ locals, request }) => {
	const formData = await request.formData();
        const id = formData.get('id');
	const student = {
		name: formData.get('name'),
		age: formData.get('age')
	};
	await locals.STUDENTS.put(id, JSON.stringify(student));
	return { status: 302, headers: { Location: `/students/${id}` } };
};

Putting this here in case it's helpful for someone. I've been using this repo as my boilerplate specifically for development via thanks to miniflare.
https://github.com/tyvdh/test-kit

Putting this here in case it's helpful for someone. I've been using this repo as my boilerplate specifically for development via thanks to miniflare.
https://github.com/tyvdh/test-kit

Is miniflare usable for cloudflare pages? I thought we needed to use wrangler 2.

Well miniflare is for development and even wrangler 2 uses miniflare in the background during development so it's a moot point.

I tried @tyvdh repo but my installation was braking once I uploaded to Cloudflare Pages.
Here is my solution based on @tyvdh to access a KV store in Cloudflare with a slight modification - hope it helps someone else:
Install miniflare  npm i -D miniflare
In app.d.ts add your KVNamespace. In my case, it is called ASIMED_KV - this name has to match to your binding to a KV under your Cloudflare Pages project, in the Functions menu and Bindings:
/// <reference types="@sveltejs/kit" />

// See https://kit.svelte.dev/docs/types#app
// for information about these interfaces
declare namespace App {
	interface Platform {
		env?: {
			ASIMED_KV: KVNamespace;
		};
	}
}

Next, setup a helper function to instantiate miniflare to use in local development:
miniflare.ts
import { Miniflare, Log, LogLevel } from 'miniflare';
import { dev } from '$app/environment';

export const fallBackPlatformToMiniFlareInDev = async (_platform: App.Platform) => {
	if (!dev) return _platform;

	if (_platform) return _platform;
	const mf = new Miniflare({
		log: new Log(LogLevel.INFO),
		kvPersist: './kv-data', // Use filebase or in memory store
		kvNamespaces: ['ASIMED_KV'], //Declare array with NameSpaces
		globalAsyncIO: true,
		globalTimers: true,
		globalRandom: true,

		script: `
		addEventListener("fetch", (event) => {
			event.waitUntil(Promise.resolve(event.request.url));
			event.respondWith(new Response(event.request.headers.get("X-Message")));
		});
		addEventListener("scheduled", (event) => {
			event.waitUntil(Promise.resolve(event.scheduledTime));
		});
		`
	});

	// await mf.dispatchFetch('https://host.tld');

	const env = await mf.getBindings();

	const platform: App.Platform = { env };

	return platform;
};

Create hooks.server.ts in scr directory, add a handler function and conditionally import the miniflare helper function. This happens to be important because if it is not conditionally loaded the Cloudflare Pages build will fail as core NodeJS libraries are not available:
import { dev } from '$app/environment';
import type { Handle } from '@sveltejs/kit';

export const handle: Handle = async ({ event, resolve }) => {
	if (dev) {
		const { fallBackPlatformToMiniFlareInDev } = await import('$lib/clients/miniflare');
		event.platform = await fallBackPlatformToMiniFlareInDev(event.platform);
	}
	return resolve(event);
};

Finally, test it on an endpoint, in my case /api/kv-test/+server.ts:
import type { RequestHandler } from '@sveltejs/kit';
import { v4 as uuidv4 } from 'uuid';
import { json } from '@sveltejs/kit';

export const GET: RequestHandler = async ({ request, platform }) => {
	const ASIMED = platform.env.ASIMED_KV; //from NameSpace
	await ASIMED.put(String(uuidv4()), JSON.stringify(new Date()), {
		metadata: { someMetadataKey: 'someMetadataValue' }
	});

	return json(await NAMESPACE.list());
};

In Miniflare 3, the API has changed: mf.getBindings is not a function (see https://miniflare.dev/get-started/migrating). Is there a way to achieve the approach shown in https://github.com/sveltejs/kit/issues/2966#issuecomment-1251898659 using Miniflare 3?

Use this package cf-workers-proxy to start a worker proxy server when dev locally.

Use this package cf-workers-proxy to start a worker proxy server when dev locally.

this repo saved my day

In Miniflare 3, the API has changed: mf.getBindings is not a function (see https://miniflare.dev/get-started/migrating). Is there a way to achieve the approach shown in #2966 (comment) using Miniflare 3?

Hi @GeoffreyBooth, the Cloudflare team has added support back to the getBindgins function in PR 639, the implementation is via proxy.


Anaconda server badge not found anymore (in README)

we are using this one and it looks like it's gone https://anaconda.org/esmvalgroup/esmvaltool/badges/installer/conda.svg - the Badges repo needs an update and I'm not 100% sure who can do that? @zklaus @bouweandela @sloosvel any hints please? Same issue in Core too https://github.com/ESMValGroup/ESMValCore  - shall we grab the Anaconda 2.2.0 maybe?

The badges should point to conda-forge, not the long abandoned esmvalgroup conda channel. Correct badges are here: https://anaconda.org/conda-forge/esmvaltool/badges

excellent find, Bouwe, I knew something was fishy there, it just didn't jump out the page :grin:

good call @lukruh - I reckon we just have to keep this in mind for now, I don't really have time to create a new badge at the moment, but if you can, then we'll plop it right in :+1:


More background on the proxy setting

done

Pull request successfully merged and closed
Alexander<EMAIL_ADDRESS>hat am 29.06.2021 11:56 geschrieben:

@fiscoal requested review from @fiskaltrust/pos-dealer-experience-team on: #40 More background on the proxy setting.
—You are receiving this because your review was requested.Reply to this email directly, view it on GitHub, or unsubscribe.
mit freundlichen Grüßen
Ralf Fabry
Dipl.Soz.Päd. (FH)
zertifiziert für MS Office (MMI)
OCG-Beurteiler IT-Security
OCG-Beurteiler ECDL-ADVANCED
+43<PHONE_NUMBER>


Description mislabels seconds as minutes

Distance: 339390 m (approx. 15514 minutes)
Seconds are mislabelled as minutes. Please replace "minutes" with "seconds".
Using version ac1908d46431219c86f9df6f4e0034e94667e38d

I believe you are not using the latest version either of the source code or of the Javascript Frontend. Are you using the KML descriptor? This one was deprecated and removed some time ago.


Introducing Platform Configuration Cache.

Purpose

Enable proper cache for Platform configuration

Goals

N/A

Approach

N/A

User stories

N/A

Release note

Enabled configurable Platform configuration cache.

Documentation

N/A

Training

N/A

Certification

N/A

Marketing

N/A

Security checks

Followed secure coding standards in http://wso2.com/technical-reports/wso2-secure-engineering-guidelines? yes/no

Ran FindSecurityBugs plugin and verified report? yes

Confirmed that this PR doesn't commit any keys, passwords, tokens, usernames, or other secrets? yes

Samples

N/A

Related PRs

N/A

Migrations (if applicable)

N/A

Test environment

N/A

Learning

N/A

Closing as this improvement has been done with a different approach.
https://github.com/wso2/carbon-device-mgt/pull/1181


Server sending packet to <IP_ADDRESS> after every reset - what is this?

Not a bug, but more a question.  What is the call out to <IP_ADDRESS> everytime a user submits a password change? It can be seen via WireShark.  Any clue what this traffic is?

Can you post the payload?
On Tue, Jun 5, 2018, 1:37 PM MistrRoboto<EMAIL_ADDRESS>wrote:

Not a bug, but more a question. What is the call out to <IP_ADDRESS>
everytime a user submits a password change? It can be seen via WireShark.
Any clue what this traffic is?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/unosquare/passcore/issues/153, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABsYsIFFiHLTAB0qWoTIdi1ik4WJi5pQks5t5s_WgaJpZM4UbWGO
.

Forgive my ignorance... this is what I see out of WireShark... but am not sure this is what you are requesting
0000   00 50 56 81 36 c5 00 1a 8c f0 c1 80 08 00 45 00   .PV.6Å...ðÁ...E.
0010   00 34 11 54 00 00 39 06 f8 24 ac d9 07 c4 c0 a8   .4.T..9.ø$¬Ù.ÄÀ¨
0020   03 06 01 bb dd cd 5b 7f 39 fa 86 8a 81 e8 80 12   ...»ÝÍ[.9ú...è..
0030   a7 1c d2 72 00 00 02 04 05 64 01 01 04 02 01 03   §.Òr.....d......
0040   03 08                                             ..

Or maybe a screenshot?

Thought maybe something to do with reCaptcha, but I'm unable to confirm that IP block is used by Google for those purposes.

Again...

https://www.ultratools.com/tools/ipWhoisLookupResult
It's Google. Probably for reCaptcha.

Can confirm the app breaks when I block outbound traffic to that IP.  Wish there was some documentation on IP addresses used by Google to provide reCaptcha service.  Nothing I can find includes that IP (<IP_ADDRESS>)

$ whois <IP_ADDRESS>

ARIN WHOIS data and services are subject to the Terms of Use
available at: https://www.arin.net/whois_tou.html

If you see inaccuracies in the results, please report at
https://www.arin.net/resources/whois_reporting/index.html

NetRange:       <IP_ADDRESS> - <IP_ADDRESS>
CIDR:           <IP_ADDRESS>/16
NetName:        GOOGLE
NetHandle:      NET-172-217-0-0-1
Parent:         NET172 (NET-172-0-0-0-0)
NetType:        Direct Allocation
OriginAS:       AS15169
Organization:   Google LLC (GOGL)
RegDate:        2012-04-16
Updated:        2012-04-16
Ref:            https://whois.arin.net/rest/net/NET-172-217-0-0-1
OrgName:        Google LLC
OrgId:          GOGL
Address:        1600 Amphitheatre Parkway
City:           Mountain View
StateProv:      CA
PostalCode:     94043
Country:        US
RegDate:        2000-03-30
Updated:        2017-12-21
Ref:            https://whois.arin.net/rest/org/GOGL
OrgAbuseHandle: ABUSE5250-ARIN
OrgAbuseName:   Abuse
OrgAbusePhone:  +1-650-253-0000
OrgAbuseEmail<EMAIL_ADDRESS>OrgAbuseRef:    https://whois.arin.net/rest/poc/ABUSE5250-ARIN
OrgTechHandle: ZG39-ARIN
OrgTechName:   Google LLC
OrgTechPhone:  +1-650-253-0000
OrgTechEmail<EMAIL_ADDRESS>OrgTechRef:    https://whois.arin.net/rest/poc/ZG39-ARIN

ARIN WHOIS data and services are subject to the Terms of Use
available at: https://www.arin.net/whois_tou.html

If you see inaccuracies in the results, please report at
https://www.arin.net/resources/whois_reporting/index.html
On Tue, Jun 5, 2018 at 2:58 PM, MistrRoboto<EMAIL_ADDRESS>wrote:

Can confirm the app breaks when I block outbound traffic to that IP. Wish
there was some documentation on IP addresses used by Google to provide
reCaptcha service. Nothing I can find includes that IP (<IP_ADDRESS>)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/unosquare/passcore/issues/153#issuecomment-394822369,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT8V4jNiMOccPqbWFnpVSxrXSFp47Ez1ks5t5tTAgaJpZM4UbWGO
.

--
(◕‿◕)

Thanks, I did see that.  Just wasn't sure if Google used those IPs for web hosting, etc.  Something fishy a bad site could sit behind.

I can see the confusion regarding 172.x

https://en.wikipedia.org/wiki/Private_network
https://ant.isi.edu/address/

20-bit block
<IP_ADDRESS> – <IP_ADDRESS>
1,048,576
<IP_ADDRESS>/12 (<IP_ADDRESS>)
20 bits
12 bits
16 contiguous class B networks

While I understand the tool is open source - I am unable to understand the code.  In theory - a user loads the page.  Completes the form/reCaptcha, and hits submit.  This information is passed back to the web/app server, with subsequent packets sent to the AD server and Googles reCaptcha service?

Have you never used reCapatcha? That's literally how it works. The
application uses Googles reCaptcha API.
On Tue, Jun 5, 2018 at 3:14 PM, MistrRoboto<EMAIL_ADDRESS>wrote:

While I understand the tool is open source - I am unable to understand the
code. In theory - a user loads the page. Completes the form/reCaptcha, and
hits submit. This information is passed back to the web/app server, with
subsequent packets sent to the AD server and Googles reCaptcha service?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/unosquare/passcore/issues/153#issuecomment-394827340,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AT8V4mypLRhAgiFgsuplK2RSfzM45cYUks5t5tihgaJpZM4UbWGO
.

--
(◕‿◕)

@geoperez Is this a "wontfix" because of the use of reCaptcha; or is this something someone can work on in the future as a "paranoid mode"?

"Question" tag is good enough, closing the issue.

Thanks!  Not sure checking outbound packets of a tool that stores an admin credentials in plain text, and handles users passwords is, "Paranoid", but appreciate the assurance none the less.


Use one RoactHooks instance

Currently at the bottom of every hooked component we create a new RoactHooks instance. a better way to do this is to store a module named hook that just returns RoactHooks.new(Roact) so that way you're not making mulitple RoactHooks instances and then you can just do return hook(Component)

I'm leaning towards not doing this. I started making this port locally and I found that this change does not add much value. In particular this is because:

Including a hook singleton results in the same number of requires from each file
Swapping RoactHooks.new(Roact)(Story) with hook(Story) for the return statement adds an extra layer of abstraction which I'm not fond of. Having to check hook.lua to see what it's doing adds an extra step when right now you can see how Roact/RoactHooks interact with each other in component
Creating a new instance of RoactHooks doesn't have any impact on the plugin's performance from what I can tell, so it's fine to create a ton of them

I realized we should be able to use a singleton RoactHooks instance inside of all of our hooks, which removes the need to pass in hooks as the first prop. If this works like I expect, then we can move ahead with this change

Any updates regarding this?


Add Swift support

Simple swift model types with Swift 4 Codable support.

          2 Warnings

:warning:
This is a big PR, please consider splitting it up to ease code review.

:warning:
Any source code changes should have an entry in CHANGELOG.md or have #trivial in their title.

  Generated by :no_entry_sign: Danger

          2 Warnings

:warning:
This is a big PR, please consider splitting it up to ease code review.

:warning:
Any source code changes should have an entry in CHANGELOG.md or have #trivial in their title.

  Generated by :no_entry_sign: Danger

@rahul-malik I couldn't get the integration tests to pass locally — something up with x86 linker. You seeing the same on your end?

@levi I'll check it out soon. I might need to update our Swift version in CI to have Swift 4 features

          2 Warnings

:warning:
This is a big PR, please consider splitting it up to ease code review.

:warning:
Any source code changes should have an entry in CHANGELOG.md or have #trivial in their title.

  Generated by :no_entry_sign: Danger

@levi - I got passed the integration test issue you were talking about. looks like there is an actual issue in the swift unit tests now.
Compile Swift Module 'Swifty' (5 sources)
Test Suite 'All tests' started at 2017-09-10 12:37:09.038
Test Suite 'SwiftyPackageTests.xctest' started at 2017-09-10 12:37:09.038
Test Suite 'SwiftyTests' started at 2017-09-10 12:37:09.038
Test Case '-[SwiftyTests.SwiftyTests testJSONEncoding]' started.
fatal error: Dictionary<AnyHashable, Any> does not conform to Encodable because AnyHashable does not conform to Encodable.: file /Library/Caches/com.apple.xbs/Sources/swiftlang/swiftlang-9<IP_ADDRESS>/src/swift/stdlib/public/core/Codable.swift, line 3962

@rahul-malik we can add some methods for sure. I'd like to do that in a later patch, however. Of the current methods in the Obj-c implementation, Equatable, Hashable and merge would be the most prime candidates. Builder isn't needed because of copy-on-write and Codable will replace the need to init from dictionary.
Like I mentioned earlier, I'm about to run this against my own API next week and start refactoring my model layer to use the output. One of the current unknowns is whether I need to write a custom app-specific Codable layer or eventually write something that Plank generates for me. Thinking that the result of the effort will determine the maturity of the Swift implementation and identify if anything further needs to be added.

Relevant development:

The master branch of Swift already supports compiler derivation of Equatable and Hashable.

https://twitter.com/jckarter/status/908417772220162048

@rahul-malik The PR is not merged yet: https://github.com/apple/swift/pull/9619 . We should decide if we wait for this is supported by the Swift compiler or have it backed into Plank.

@levi - Any feedback on how this is working for you with your API?

@levi - Any update on this?

any updates ?

Sorry for pinging, but any updates for this yet?


Last character in clock is missing

When Atom is launched, clock doesn't display last character. If I go to settings and change format, it goes normal for a while but goes back to missing last character.
Atom: 1.15.4 x64
Electron: 1.3.13
OS: XUbuntu 16.04
Thrown From: atom-clock package 0.1.5

Thank you for the issue. I will look into it as soon as possible, maybe trying to replicate it.
May I ask you which packages are currently active in your environment? I'm guessing it might depend on some external package that somehow interacts with the status bar.

FYI, I have been noticing this too over the last few days.
OS: macOS 10.12.3
Atom: 1.14.4 x64
atom-clock: 0.1.5

Note that it occurs regardless of what file, plugin or additional "status bar" items.  If I start with a blank editor, it is still truncated:

I do have a custom Time Format in the settings: MM/DD h:mma  But this does not matter.  If I remove the custom Time Format and restart Atom, it is still truncating the "time":

--
I've noticed a few things that temporarily fixes it for the session that Atom is running:

Disable/Enable the plugin.
Remove/Add or Tweak the "Time Format" settings to anything.

Doing either of these immediately fixes the SPAN or DIV issue that is occurring.
--
You can "scroll" left to right the statusbar in this area.
--
Lastly, I do use a custom Font with custom editor stylesheets.  Since Atom 1.13 (aka "Deprecation Hell" upgrade), a lot of styles had to be changed.
I'm wondering if the way the statusbar is calculating the width is now different - so when you go and populate the div/span, it isn't resized accordingly.

Thanks for the detailed showcase of the bug.
In the latest release of the clock, I just changed the way the packages displays the clock in the bar, because the div containing the time moves slightly if also seconds are displayed. Right now, I recalculate the width of the clock content every time the format changes, then I add some extra pixels for safety and I keep it fixed. I'm wondering, probably something is wrong when the package initializes and calculates the size for the first time.
I'll look into the issue ASAP, thank you again for letting me know!

I was able to reproduce the bug in some situations where the developer console is placed to the right side of the screen. I applied a relative position to the container, now it seems to work properly (at least, I was not able to reproduce the bug any longer). I will update the package version, hoping that's it!

@b3by it works! 👍
Though, the vertical alignment is a tad off.  🥇
So.. close...!

Oh no!
I aligned the clock in the vertical middle, just like the other tiles out of the box, because on my system it was vertically off, just a bit.
I'm thinking, this might depend to the font you're using. I could get the vertical size of the status bar and place the clock right in the middle... oh, this is just for positioning a tiny text cell :(


Feature/use saved starts for staypoints

Closes #110
Adding two changes to the staypoint computation:

Disregard all trajectory points with accuracy of more than 200m. This is implemented more complicated than it needed to be as the linter wouldnt allow me to do coords = traj.coords.filter((val, idx) => {traj.accuracy[idx] <= 200}) as I wasn't using val.

Incorporate the changes to the trajectory data model that now logs trajectory beginnings. When a new beginning point arrives in the algorithm running through the trajectory, we potentially close the last staypoint if it existed and start the algorithm new.

LGTM – I took the liberty and did some minor refinements here bee3291 ;)

Thanks Jerome!


raster stream to geotiff

 geotiff_from_raster_stream

Pull Request Test Coverage Report for Build 968618643

77 of 79 (97.47%)  changed or added relevant lines in 2 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage increased (+0.08%) to 79.492%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

datatypes/src/spatial_reference.rs
8
9
88.89%

operators/src/util/raster_stream_to_geotiff.rs
69
70
98.57%

Files with Coverage Reduction
New Missed Lines
%

operators/src/util/input/string_or_number.rs
1
80.0%

Totals

Change from base Build 967517691:
0.08%

Covered Lines:
17551

Relevant Lines:
22079

💛  - Coveralls


use las file

Hi I'm a newbie. is it possible to use las data with this code?

Hi I'm a newbie. is it possible to use las data with this code?

Yes, same question with me... how to use this code with las data , since I am a newbie dont have much exploration. Any help will me much appreciated.


The value of label field in given Reader.Type object is always null

Describe the bug
Currently, I'm using stripe-terminal-react-native in the app, and I want to display the label of Readers (both discoveredReaders and connectedReader). But I found that the label field in returned Reader.Type objects are always null.
To Reproduce

Create a reader with a label or Update the label of the existing reader
Discover and connect the reader with the app (get discoveredReaders and connectedReader by using useStripeTerminal)

Expected behavior
The returned Reader.Type objects include label fields with the right values
Stripe Terminal React Native SDK version
0.0.1-beta.15
Smartphone (please complete the following information):

Device: iPhone 12 Pro Max
OS: iOS 17.2

Additional context
Discord Dev Help: https://discord.com/channels/841573134531821608/841573134531821616/1222214362627051570

hey @khoahtran-kms do you experience this when using our example or dev-app as well? I'm able to access reader labels on both https://github.com/stripe/stripe-terminal-react-native/blob/20b41d6c/dev-app/src/screens/DiscoverReadersScreen.tsx#L103-L110

Hi @nazli-stripe,
Yes, we get the same when using the example app with Stripe Terminal React Native SDK version 0.0.1-beta.17. We're using a Stripe Reader M2 for testing.

Hi @tuantran-playon
Not sure if it help for your case, but from iOS documentation.
The label value in iOS seems only available for internet reader now.
/**
 A custom label that may be given to a reader for easier identification.

 (Internet readers only.)
 */
@property (nonatomic, nullable, readonly) NSString *label;

Ref: https://stripe.dev/stripe-terminal-ios/docs/Classes/SCPReader.html#/c:objc(cs)SCPReader(py)label


database operator is not installed

sh scripts/ci-create-operators-openshift.sh app ci reset podman_reset
No resources found in openshift-operators namespace.
Status:
2022-05-31 10:11:26 Status: installplans()

When only the two operator instances are remaining the installation of the operators with the script automation works
See output and logfile:

Output

************************************
 Calculate duration
************************************
*** Duration: (Start:<PHONE_NUMBER>) to (End:<PHONE_NUMBER>)
*** Duration: 0:40:44
************************************
 Add tag related to current automation
************************************
Commint ID: ea224b0
Date: 2022-05-31_23-55
*** Create tag: verify_scripts_automation_kub_2022-05-31_23-55_ea224b0
Enumerating objects: 1, done.
Counting objects: 100% (1/1), done.
Writing objects: 100% (1/1), 4.71 KiB | 535.00 KiB/s, done.
Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
To https://github.com/IBM/operator-sample-go.git
 * [new tag]         verify_scripts_automation_kub_2022-05-31_23-55_ea224b0 -> verify_scripts_automation_kub_2022-05-31_23-55_ea224b0

Logfile of the automation

script-automation-openshift.log

Tag

https://github.com/IBM/operator-sample-go/releases/tag/verify_scripts_automation_kub_2022-05-31_23-55_ea224b0

Fix delete csv for operator when ensure the subscription was deleted: https://github.com/IBM/operator-sample-go/commit/748bad089539ab47a9cafff74a564a3ebeadcb8c


Improves output in Pantavisor logs

Adds a new parser for /dev/kmsg, extracting the timestamp and formatting it in the same way that the dmesg command does it
Splits logs with multiple lines (like /dev/kmsg)

Looks good apparently. So how are things changed, the timestamps are changed for all messages in filetree, singlefile, etc? or is this just affecting /dev/kmsg messages?
Maybe a comment here and there would help understanding the code.

Looks good apparently. So how are things changed, the timestamps are changed for all messages in filetree, singlefile, etc? or is this just affecting /dev/kmsg messages?
Maybe a comment here and there would help understanding the code. Also, a better description that explains what is changing in the output from the pantavisor user perspective and a less generic title as "Improves output in Pantavisor logs".

This PR solves 2 problems:

Split in lines logs with multiples lines, for examples those which comes from /dev/kmsg if the ring buffer has old data, as it happens at the logserver start.
Format the /dev/kmsg logs. This logs come in the following format:

6,0,0,-;Booting Linux on physical CPU 0x0

Where the first number is the facility (see: https://man7.org/linux/man-pages/man3/syslog.3.html) the second is a sequential number and the third is the monotonic timestamp in microseconds, finally a "flag" is included. The separator before the message is a semicolon.
Now the messages are shown in the same way as dmesg does it
This PR affect all logs who use pvfmt functions (like stdout family and filetree) and those who use jsonify (like singlefile)
As an example the old filetree with dmesg messages looked like this:
[pantavisor] 8 DEBUG	 -- [logserver]: starting logserver loop
[pantavisor] 8 DEBUG	 -- [logserver]: started log service with pid 80
[pantavisor] 8 DEBUG	 -- [logserver]: new fd (3) for pantavisor:dmesg subscribed
[pantavisor] 8 DEBUG	 -- [logserver]: subscribing dmesg to logserver
[pantavisor] 8 INFO	 -- [dmesg]: 6,0,0,-;Booting Linux on physical CPU 0x0
5,1,0,-;Linux version 5.10.72-g19c10206f515 (felipe@597400ea2e2c) (arm-linux-musleabihf-gcc (GCC) 6.3.0, GNU ld (GNU Binutils) 2.27) #1 PREEMPT Mon Jul 29 17:42:24 UTC 2024
6,2,0,-;CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
6,3,0,-;CPU: div instructions available: patching division code
6,4,0,-;CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
6,5,0,-;OF: fdt: Machine model: BSH SMM M2
6,6,0,-;Memory policy: Data cache writeback
6,7,0,-;Zone ranges:
6,8,0,-;  Normal   [mem 0x0000000080000000-0x0000000087ffffff]
6,9,0,-;Movable zone start for each node
6,10,0,-;Early memory node ranges

Please note, the single [pantavisor] 8 INFO	 -- [dmesg] for multiples lines. Now it looks like this:
[pantavisor] 6 DEBUG     -- [logserver]: started log service with pid 80
[pantavisor] 6 DEBUG     -- [logserver]: new fd (3) for pantavisor:dmesg subscribed
[pantavisor] 6 DEBUG     -- [logserver]: subscribing dmesg to logserver
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Booting Linux on physical CPU 0x0
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Linux version 5.10.72-g19c10206f515 (felipe@2532d69b4166) (arm-linux-musleabihf-gcc (GCC) 6.3.0, GNU ld (GNU Binutils) 2.27) #1 PREEMPT
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] CPU: div instructions available: patching division code
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] OF: fdt: Machine model: BSH SMM M2
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Memory policy: Data cache writeback
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Zone ranges:
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000]   Normal   [mem 0x0000000080000000-0x0000000087ffffff]
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Movable zone start for each node
[pantavisor] 6 INFO      -- [dmesg]: [    0.000000] Early memory node ranges

The same happend with the json format. The old ones:
{"tsec":6,"tnano":0,"plat":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"starting logserver loop"}
{"tsec":6,"tnano":0,"plat":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"started log service with pid 80"}
{"tsec":6,"tnano":0,"plat":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"new fd (3) for pantavisor:dmesg subscribed"}
{"tsec":6,"tnano":0,"plat":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"subscribing dmesg to logserver"}
{"tsec":6,"tnano":0,"plat":"pantavisor","lvl":"INFO","src":"dmesg","msg":"6,0,0,-;Booting Linux on physical CPU 0x0\n5,1,0,-;Linux version 5.10.72-g19c10206f515 (felipe@0cf588e7a89f) (arm-linux-musleabihf-gcc (GCC) 6.3.0, GNU ld (GNU Binutils) 2.27) #1 PREEMPT Tue Jul 30 20:51:30 UTC 2024\n6,2,0,-;CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d\n6,3,0,-;CPU: div instructions available: patching division code\n6,4,0,-;CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache\n6,5,0,-;OF: fdt: Machine model: BSH SMM M2\n6,6,0,-;Memory policy: Data cache writeback\n6,7,0,-;Zone ranges:\n6,8,0,-;  Normal   [mem 0x0000000080000000-0x0000000087ffffff]\n6,9,0,-;Movable zone start for each node\n6,10,0,-;Early memory node ranges\n6,11,0,-;  node   0: [mem 0x0000000080000000-0x0000000087ffffff]\n6,12,0,-;Initmem setup node 0 [mem 0x0000000080000000-0x0000000087ffffff]\n7,13,0,-;On node 0 totalpages: 32768\n7,14,0,-;  Normal zone: 288 pages used for memmap\n7,15,0,-;  Normal zone: 0 pages reserved\n7,16,0,-;  Nor ...

I cut the message, but I think the idea is understood. The new json:
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"starting logserver loop"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"started log service with pid 80"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"new fd (3) for pantavisor:dmesg subscribed"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"DEBUG","src":"logserver","msg":"subscribing dmesg to logserver"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Booting Linux on physical CPU 0x0"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Linux version 5.10.72-g19c10206f515 (felipe@2532d69b4166) (arm-linux-musleabihf-gcc (GCC) 6.3.
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c53c7d"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] CPU: div instructions available: patching division code"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] OF: fdt: Machine model: BSH SMM M2"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Memory policy: Data cache writeback"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Zone ranges:"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000]   Normal   [mem 0x0000000080000000-0x0000000087ffffff]"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Movable zone start for each node"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Early memory node ranges"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000]   node   0: [mem 0x0000000080000000-0x0000000087ffffff]"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x0000000087ffffff]"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000] On node 0 totalpages: 32768"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000]   Normal zone: 288 pages used for memmap"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000]   Normal zone: 0 pages reserved"}
{"tsec":6,"tnano":0,"platform":"pantavisor","lvl":"INFO","src":"dmesg","msg":"[    0.000000]   Normal zone: 32768 pages, LIFO batch:7"}


fix: mark renderer as optional

🔗 Linked issue
❓ Type of change

[ ] 📖 Documentation (updates to the documentation or readme)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description
We test if renderer exists, so I think we can safely mark this as an optional type:
https://github.com/unjs/nitro/blob/aa5a2f4120681e00c311607fd4ad981df30be1d7/src/rollup/plugins/handlers.ts#L19-L25
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

What issue does this fix?


All players are put on the same continent

All of the players are put at the same continent at the beginning of game.
The bug is expected to be fixed after all game structures are mapped properly (November 2023).

This bug is due to wrong screen being used for map generation. The original code bypasses this by transferring map data to another screen, but permanent solution has to be implemented.

This bug should be fixed with the last commit.

The bug appears completely resolved. Closing as solved.


Add support for magic check in EvmDatabaseOps

Calls the newly created method MiqFileStorage.magic_number_for to pre-fetch the magic from the file that will be downloaded, and send that to PostgresAdmin as a database_opts to avoid checking it on it's end.
Requires changes in gems-pending to work (Update: done)
Links

Currently built off of https://github.com/ManageIQ/manageiq/pull/18166
Requires a few PRs from manageiq-gems-pending

https://github.com/ManageIQ/manageiq-gems-pending/pull/401
https://github.com/ManageIQ/manageiq-gems-pending/pull/402

@miq-bot assign @carbonin
@miq-bot add_label enhancement, hammer/yes

@carbonin comments addressed.

Hammer backport details:
$ git log -1
commit aebb66eecfca49441783074c59bb77045fbc1a42
Author: Nick Carboni<EMAIL_ADDRESS>Date:   Mon Nov 12 18:01:45 2018 -0500

    Merge pull request #18167 from NickLaMuro/magic-number-support-for-database-restores

    Add support for magic check in EvmDatabaseOps

    (cherry picked from commit 3b053f0afd4a21fdd333a695a47d53f2ffac2248)


cp2code from inside a bash

Maybe it's not a real issue but let me explain.
I created a little bash to show your what I mean:
code test_cp2code.sh
`#!/bin/sh
ps -aux | cp2code
chmod +x
./test_cp2code.sh
line 2: cp2code: command not found
`
How I can use cp2code inside a bash script?
thx

The commands of this extension (i.e., cp2code or tee2code) only work when you open a new integrated shell (i.e., within VS Code's "Terminal" panel).
Of course, you can still pipe streams from external shells, with this native VS Code CLI command:
ps -aux | code -r -

or if you're using the Insiders version:
ps -aux | code-insiders -r -

(-r or --resuse-window flag prevents opening new VS Code windows per command execution)