More awesome stuff:refresh signal, override type() and have screens

Whoops, I pushed :branch instead of +branch. The branch is now back, but apparently that doesn't mean that GitHub let's me reopen this pull request. Should I open a new one or do you just want to pull from the branch directly?
Should be git pull 	https://github.com/psychon/way-cooler.git  more-awesome-stuff, if you want.

I just pulled it, so nothing more for you to do. No worries.


mprotect missing from type libraries

A user reported that we are missing the type library info for the mprotect function:

This can be verified from the API as well:
>>> type_lib = bv.platform.get_type_libraries_by_name('libc_x86_64.so.6')[0]
>>> bv.import_library_object('mprotect', type_lib)

eclipse.zip


Making Ophyd Seg fault!

So this is a fun one...
I'm trying to use the test cam 1 sim detector on xf23id1-ioc3.  Instantiating XF:23ID1-ES{Tst-Cam:1} as a SimDetector and calling its read() function causes a seg fault.  Any ideas @klauer @dchabot (long shot, @tacaswell) ?
(ophyd)edill@xf23id1-ioc3:~$ ipython
Python 2.7.9 (default, Jan  1 2015, 17:18:30)
Type "copyright", "credits" or "license" for more information.

IPython 3.1.0 -- An enhanced Interactive Python.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

In [1]: from ophyd.controls.areadetector.detectors import SimDetector

In [2]: det1 = SimDetector('XF:23ID1-ES{Tst-Cam:1}')
/home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/pytz/__init__.py:29: UserWarning: Module bson was already imported from /home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/bson/__init__.pyc, but /home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/mongoengine-0.8.7-py2.7.egg is being added to sys.path
  from pkg_resources import resource_stream
2015-05-03 11:13:57,712 [ophyd_session:WARNING] Instantiating SessionManager outside of IPython
cas warning: Configured TCP port was unavailable.
cas warning: Using dynamically assigned TCP port 49925,
cas warning: but now two or more servers share the same UDP port.
cas warning: Depending on your IP kernel this server may not be
cas warning: reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST)

In [3]: det1.read()
2015-05-03 11:13:59,583 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}cam1:ImageMode_RBV connected
2015-05-03 11:13:59,585 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}cam1:ImageMode connected
2015-05-03 11:13:59,609 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}cam1:Acquire_RBV connected
2015-05-03 11:13:59,610 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}cam1:Acquire connected
2015-05-03 11:13:59,662 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}cam1:DetectorState_RBV connected
2015-05-03 11:13:59,934 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArraySize1_RBV connected
2015-05-03 11:13:59,935 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArraySize0_RBV connected
2015-05-03 11:13:59,936 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArraySize2_RBV connected
2015-05-03 11:13:59,961 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:NDimensions_RBV connected
2015-05-03 11:13:59,987 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArrayData connected
Segmentation fault

Eric:
2015-05-03 11:13:59,987 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArrayData connected
Why is ophyd connecting to the actual array data? I would suspect there is something here as that is a big array and most likely to cause buffer underruns. Which detector class are you using? The current area detector implementation doesn’t use that anywhere.
Also, have you tried using pyepics to connect to that PV? I would suspect this is a pyepics issue.
S
From: Eric Dill <notifications<EMAIL_ADDRESS>Reply-To: NSLS-II/ophyd <reply<EMAIL_ADDRESS>Date: Sunday, May 3, 2015 at 11:21 AM
To: NSLS-II/ophyd <ophyd<EMAIL_ADDRESS>Subject: [ophyd] Making Ophyd Seg fault! (#121)
2015-05-03 11:13:59,987 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArrayData connected

Which branch are you using?
S
From: Eric Dill <notifications<EMAIL_ADDRESS>Reply-To: NSLS-II/ophyd <reply<EMAIL_ADDRESS>Date: Sunday, May 3, 2015 at 11:21 AM
To: NSLS-II/ophyd <ophyd<EMAIL_ADDRESS>Subject: [ophyd] Making Ophyd Seg fault! (#121)
2015-05-03 11:13:59,987 [ophyd_session:DEBUG] connection notification: XF:23ID1-ES{Tst-Cam:1}image1:ArrayData connected

@dchabot thanks for the suggestion, but it's still segfaulting :(

@stuwilkins
branch: master
detector class: ophyd.controls.areadetector.detectors.SimDetector

@dchabot The stack trace is different with and without an "ophyd" ipython profile...
With the ipython profile defined in /home/edill/.ipython/profile_ophyd-testbed it segfaults immediately.  However without the ipython profile (the original post shows this), it segfaults after connecting to a few PVs...
with the ipython profile:
(ophyd)edill@xf23id1-srv1:~$ ipython --profile=ophyd-testbed
Activating auto-logging. Current session state plus future input saved.
Filename       : /home/edill/.ophyd/logs/testbed_log.py
Mode           : append
Output logging : False
Raw input log  : False
Timestamping   : False
State          : active
Python 2.7.9 (default, Jan  1 2015, 17:18:30)
Type "copyright", "credits" or "license" for more information.

IPython 3.1.0 -- An enhanced Interactive Python.
Anaconda is brought to you by Continuum Analytics.
Please check out: http://continuum.io/thanks and https://binstar.org
?         -> Introduction and overview of IPython's features.
%quickref -> Quick reference.
help      -> Python's own help system.
object?   -> Details about 'object', use 'object??' for extra details.

IPython profile: ophyd-testbed
Using matplotlib backend: Qt4Agg
Loading Ophyd Session Manager...
/home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/pytz/__init__.py:29: UserWarning: Module bson was already imported from /home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/bson/__init__.pyc, but /home/edill/anaconda/envs/ophyd/lib/python2.7/site-packages/mongoengine-0.8.7-py2.7.egg is being added to sys.path
  from pkg_resources import resource_stream
cas warning: Configured TCP port was unavailable.
cas warning: Using dynamically assigned TCP port 49997,
cas warning: but now two or more servers share the same UDP port.
cas warning: Depending on your IP kernel this server may not be
cas warning: reachable with UDP unicast (a host's IP in EPICS_CA_ADDR_LIST)
2015-05-03 12:38:03,373 [ophyd_session:DEBUG] Last persistence list = ['_persisting', '_scan_id']
Stored '_persisting' (list)
2015-05-03 12:38:03,400 [ophyd_session:DEBUG] Last Scan ID = 117
Stored '_scan_id' (int)
...Done loading Ophyd Session Manager

In [1]: from ophyd.controls.areadetector.detectors import SimDetector

In [2]: det1 = SimDetector('XF:23ID1-ES{Tst-Cam:1}')

In [3]: det1.read()
Segmentation fault

OK, what are you trying to achieve Eric? Why not use the AreaDetector class?
S
On May 3, 2015, at 12:42 PM, Eric Dill <notifications<EMAIL_ADDRESS>wrote:
@stuwilkinshttps://github.com/stuwilkins
branch: master
detector class: ophyd.controls.areadetector.detectors.SimDetector
—
Reply to this email directly or view it on GitHubhttps://github.com/NSLS-II/ophyd/issues/121#issuecomment-98502377.

I'm trying to sort out the ophyd.controls.area_detector.py module and the ophyd.controls.areadetector package

What version of PyEpics is installed? There's an issue with segfaulting when grabbing timestamped large arrays, which should be fixed in 3.2.4.

What version of PyEpics is installed? There's an issue with segfaulting when grabbing timestamped large arrays, which should be fixed in 3.2.4.

OK, how so?
S
On May 3, 2015, at 1:02 PM, Eric Dill <notifications<EMAIL_ADDRESS>wrote:
I'm trying to sort out the ophyd.controls.area_detector.py module and the ophyd.controls.areadetector package
—
Reply to this email directly or view it on GitHubhttps://github.com/NSLS-II/ophyd/issues/121#issuecomment-98504654.

That would make a lot of sense.
S
On May 3, 2015, at 1:02 PM, kne <notifications<EMAIL_ADDRESS>wrote:
What version of PyEpics is installed? There's an issue with segfaulting when grabbing timestamped large arrays, which should be fixed in 3.2.4.
—
Reply to this email directly or view it on GitHubhttps://github.com/NSLS-II/ophyd/issues/121#issuecomment-98504659.

PyEpics 3.2.4rc2
In [1]: import epics

In [2]: epics.__version__
Out[2]: '3.2.4rc2'

The segfault is happening [here] (https://github.com/NSLS-II/ophyd/blob/master/ophyd/controls/areadetector/plugins.py#L138)

It should have been fixed by rc2, but please try the final 3.2.4 release or master of pyepics.
What's the size of the array, data type, and what's EPICS_CA_MAX_ARRAY_BYTES set to? If it still crashes with the above, set it to something huge like 100mb and re-run. If it doesn't crash then, it's still related to the issue I mentioned.

According to @klauer this has been fixed upstream by pyepics, please re-open if this is still an issue.


adding search functionality to bookmarks activity

When we have a large number of bookmarked events its better to have searching enabled on the app bar in the bookmark activity. And also the share button doesnt hold any value in that as we already have one in session detail activity and hence its not needed.

Go ahead

@mananwason Can i work on this?


Add post_installation_script attr in install_pkgs.

This enable users to execute commands after installing deb packages. It
is very useful, for example, to remove files that vary build to build
specific to a deb package. For python3.4 installation, .pyc files under
/usr/lib/python3.4/pycache/ vary from build to build. With this
extra attribute, if users want to install python3.4 and ensure
reproducibility, they can set post_installation_script to be "rm -rf
/usr/lib/python3.4/pycache/".
This commit also adds removing /var/log/alternatives.log as part of
every package installation.

@dlorenc could you take a look?


Add android:exported support in manifest

This attribute is now required when targeting android 12 : https://developer.android.com/about/versions/12/behavior-changes-12#exported

The default MAIN activity is added at serialization. Would it make sense to do it in cargo_apk::apk::ApkBuilder::from_subcommand under // Set default Android manifest values and remove the custom serialization function?
Something like
if manifest
    .android_manifest
    .application
    .activity
    .intent_filter
    .iter()
    .all(|i| i.actions.iter().all(|f| f != "android.intent.action.MAIN"))
{
    manifest
        .android_manifest
        .application
        .activity
        .intent_filter
        .push(IntentFilter {
            actions: vec!["android.intent.action.MAIN".to_string()],
            categories: vec!["android.intent.category.LAUNCHER".to_string()],
            data: vec![],
        });

    manifest
        .android_manifest
        .application
        .activity
        .exported
        .replace(true);
}

@adrien-ben It may be a bit confusing to have default initialization in multiple places but it seems like the manifest in ndk-build does everything it can by default, and // Set default Android manifest values fills it up with values that come from the surrounding environment (ie. after knowing what crate is built and what NDK toolchain is available).
I'd vouch for moving this initialization function to a constructor for AndroidManifest but that may make it harder to parse/create cargo_apk::manifest::Manifest with said default values. Not sure if we should move it into cargo_apk::manifest::Manifest::from_toml either.

Note also that the serialization functions don't fill the struct in the same way impl Default does - instead these are inserted in the output when the struct is serialized, which may make things more confusing.
If we end up moving things around for exported=true we should probably also move all serialize_with functions to a single, generic place - that fill the struct and not the final serialization? I wouldn't be opposed to add an fn make_manifest_minimally_usable(&mut AndroidManifest) to ndk_build::manifest as long as it documents what it inserts depending on what other conditions. This way - if necessary at all - applications can have a clearer view of what was parsed from toml vs what we'll end up generating. serde(default = "...") impacts the deserialized result already though.

Hi guys, please merge this PR and release a new version so that we can test the rust code on the API 32 system.

I've integrated all the requested changes in #242 after radio silence since November 2021 here.

Hi, sorry about radio silence, I've been busy with work lately. Thanks for reporting the change.


Move delete outside of using so FileStorage can delete the file.

There was a bug introduced by #6038 that caused FileStorage uploads to behave incorrectly.
The behaviour is detailed by #6175
This PR moves the delete outside of the Using statement and swallows if it fails.
Behaviour can change from swallow if we decide this is not how we want to handle this.

This bit still needs to be addressed:

We should change the upload page such that it doesn't show an upload as "in progress" if the package is already available. I would either fix that as part of this change, or, create an issue on GitHub and leave a TODO in this comment that links to the issue.


Is teleporting players like /world teleport (Player) (world name) going to be added?

Will teleporting players be added? Example : /world teleport (PlayerName) (WorldName).
It would help me out a lot.

Will teleporting players be added? Example : /world teleport (PlayerName)  #(WorldName).
It would help me out a lot. #

It was removed some time ago, sadly.


Code Refactoring

The code base is concentrated into 2 files and needs improvement.
Create project structure as follows:
main.cpp
/src/
/include/

all done


mvcc: skip accumulated locks by a second get

What is changed and how it works?

Issue Number: Ref #13694
What's Changed:

Prewrite and acquire_pessimistic_lock use get_write to get the latest PUT or
DELETE record. Point get is implemented by PointGetter. In these cases, with
last_change_ts and versions_to_last_change, now we use an additional get
operation to find the record directly if versions_to_last_change reaches
SEEK_BOUND.

I think no additional metrics are needed because the count of get operation
of the write CF represents represents it.

Check List
Tests

Unit test

Release note
None

@MyonKeminta Whether do you think SEEK_BOUND is a good threshold for skipping? I find you did some research about this bound years ago.

@MyonKeminta Whether do you think SEEK_BOUND is a good threshold for skipping? I find you did some research about this bound years ago.

It makes sense to me to do the get_cf directly (which seems to include a seek operation (?))  if the accumulated locks/rollbacks is more than SEEK_BOUND. SEEK_BOUND is expected to stand for how many nexts' overhead is as large as a seek's. But since that research were done years ago, I'm actually not sure if its value is still suitable nowadays as TiKV and rocksdb are both evolving.

@MyonKeminta @ekexium PTAL

/test

/merge

/test


bridge: Lock Alpine version to 3.18

- What I did
Locked Alpine version to 3.18 because latest 3.19 does not anymore contain /sbin/iptables-legacy and build was failing with it.
- How I did it
- How to verify it
- Description for the changelog

Hi @olljanat,
thanks for the PR. We are merging it into main.
Mariano.


How do I generate updated client documents and fragments for data synchronization?

The DataSyncPlugin updates the schema with the following:

sync<T> queries for each of the models with data sync enabled
updates the models with new fields, such as _version, _lastUpdatedAt
Adds new container types for deltas

However there is no plugin available to generate the associated client-side queries and update the fragments.

Automatically generated comment to notify maintainers
/cc @machi1990, @wtrocki

Offix DataStore works with those out of the box. There is actually a lots of extra handling required on the client to handle those so generating just queries makes no sense for us.

Thanks.


Grand Final doesn't appear when we do multiple renders of the same data

If you duplicate the render() call in the demo HTML file, the result is the following:

Fixed by https://github.com/Drarig29/brackets-viewer.js/commit/b8d87a19e2144bf4bed6a44c2b5b1e89a6cf70e8


I can't build iOS project because framework "CouchbaseLite" not found in xcode

Hi! I have a compose multiplatform project with two platforms - iOS and android. I tried to use "dev.kotbase:couchbase-lite:3.1.3-1.1.0" and "dev.kotbase:couchbase-lite-paging:3.1.3-1.1.0" implementation in commonMain and it builds good in android, but not in iOS. The iOS project doesn't use cocoapods, only manual integration.
The project doesn't build and throw this error:

Can you tell me what I do wrong?

On native platforms, you need to link to the CouchbaseLite native framework or binary. I've found it easiest to use the CocoaPods plugin as described in the docs, but you can also link to the framework manually as well.
The getting-started example app does this by linking to the framework within the repository. You could also pair this with a Gradle task to download the framework to the build directory before linking. You can download the native framework here or find the link in the CocoaPods repo.
The getting-started-compose example links to the framework via CocoaPods. You just need to configure your iOS app with CocoaPods and use the .xcworkspace instead of .xcodeproj.

Great! That is another option I forgot to mention, to link the framework in the Xcode project.


TEXTFUSENET_MUTIL_PATH_FUSE_ON

Hi.
Could anyone tell me what is this "TEXTFUSENET_MUTIL_PATH_FUSE_ON" in the configs doing? because when this is enabled I get this error:  The size of tensor a (2) must match the size of tensor b (36) at non-singleton dimension 0
but when I disable this the error is gone. but I'm afraid this could affect the performance. thank you so much.

@h311-git "TEXTFUSENET_MUTIL_PATH_FUSE_ON" means using the multi_path_features_fusion module.

@h311-git "TEXTFUSENET_MUTIL_PATH_FUSE_ON" means using the multi_path_features_fusion module.
Thank you so much for your response. but do you have any idea why am i getting this error when this is enabled?

I found the solution :). the problem was because I had changed the batch size. anyway, thank you.


Passwords are shown in terminal

VS Code Version: I dont know but this happened in Sunday October 3, so you can find the latest version of the that day.
OS Version: Windows 11
Note: This happened when i fresh-install the vscode. There was only C# Omni extension afaik.

Maybe local echo? See #136063

/duplicate #130821


Adding a Password parameter for troubleshooting

Any chance we can get a password parameter for troubleshooting instances that fail to create? There is a disable_stop_instance flag for this purpose, I would like some way to easily login to the server. I can't find a way to get the temp key or set a password on image creation fail.

@matttrach You can run Packer command with -debug option. It will store the temp key in the same directory where you run the command, and the building process will stop at each step waiting for your command to proceed.


new Cluster resource

Fixes: #177
To enable tasks to connect to an external cluster other than the host
cluster, for example to deploy a app.
Proposed changes

new resource of type Cluster
cluster resource adds a step to create a kubeconfig for target cluster using a new binary kubeconfig-writer
integration test to check kubeconfig
resource validation to check for cluster resource
remove clusters from pipeline and pipeline params types
change examples to use cluster resource
add documentation in using.md

Looking good! if you get tired of the philosophical debate about the tests feel free to remove this and go ahead and merge:
/hold
/lgtm
(But if you can see the same dream I see, a dream of many narrowly focused unit tests and very very very few integration tests, i think we could make this even more awesome!)

/retest

/lgtm

/hold cancel


return error on delete statement, closes #1933

Simply return ErrInvalidQuery in this case (I see deleting would panic in the shards code anyway.)

Good catch - I'll go ahead and merge this in. Thanks!


Escape Sequences in Strings - Free Code Camp (FCC)

Challenge Escape Sequences in Strings has an issue.
User Agent is: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
Question : [

]
My code:
var myStr="FirstLine\n \SecondLine\ \rThirdline";

Note that the instructions indicate there should not be any spaces in your string, and pay attention to capitalization.
Please seek coding assistance in the Help chat. Issues are for problems with the challenges or website.
Happy coding!

@naveenlb thanks for the issue but as @BKinahan has pointed out, you need to pay attention to capitalization and spacing. Closing as not an issue with the site. Happy coding!

 The key is to not use any spaces.
Solution: var myStr = "FirstLine\n\SecondLine\\rThirdLine"; // Change this line

Hi after I tried differnt ways this is how this code works
var myStr = "FristLine\n\SecondLine\\rThirdLine";

sorry, it has two backslashs before second and \r after the two backlashs of second;
var myStr = "FristLine\n\SecondLine\\rThirdLine";

var myStr = "FirstLine\n\secondLine\\rThirdLine";

some how when I post my code is not showing the right way again there are \ before the secondand \
\r before the third

@Muhsin2016
Please use the HelpJavaScript chat room for getting challenge related help.
Happy Coding.

"FirstLine\n\SecondLine\\rThirdLine";    (try this)

"FirstLine\n\SecondLine\\rThirdLine";    (try this)

try this it worked for me var myStr = "FirstLine\n\SecondLine\\rThirdLine"; // Change this line

'FirstLine\n\SecondLine\\rThirdLine';
no spaces and pay attention to caps

var myStr = "FirstLine\n\SecondLine\\rThirdLine";
this will work ! :)


Blazor Runtime Culture

Please consider browser runtime cultural and allow switching of culture with in the Blazor environment

Good idea. It will be a while before we get to it, but it's good to have on the backlog.


Detect GitHub Enterprise URL from environment variable

Currently, we allow users to specify their GitHub Enterprise URL via a VS Code setting, but we should also allow this to be set via an environment variable, in order to provide better interop with existing tools (e.g. the Hub and Gist CLIs).

Closing this for now, since no one has ever requested it 👍 We can re-open it based on user interest.


Publish Greg's demo on face recognition

Apply GUI extension template
Review code
Decide what Core features should be exposed

Add core features (scenario mgt)
Deploy on Cloud
Publish on website

The ticket is blocked since opencv is not available on taipy cloud for now.

I found a way to install OpenCV. Installing opencv-python will raise an error:
Traceback (most recent call last):
  File "/home/florianjacta/apps/face-recognition/main.py", line 3, in
    import cv2
  File "/home/florianjacta/apps/face-recognition/.venv/lib/python3.10/site-packages/cv2/__init__.py", line 181, in
    bootstrap()
  File "/home/florianjacta/apps/face-recognition/.venv/lib/python3.10/site-packages/cv2/__init__.py", line 153, in bootstrap
    native_module = importlib.import_module("cv2")
  File "/usr/lib/python3.10/importlib/__init__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: libGL.so.1: cannot open shared object file: No such file or directory

Choosing the headless package made it work.

opencv-python-headless is a package of OpenCV bindings for Python without the user interface (GUI) features. This package is useful when you want to use OpenCV in a headless environment like a server, Docker, or when you don't need GUI components.

taipy==2.1
opencv-python-headless==<IP_ADDRESS>
opencv-contrib-python-headless==<IP_ADDRESS>
pillow

Here is the deployed application working: https://face-recognition.taipy.cloud/


Change 'ordinal' data type to 'integer'

Several statuses uses 'ordinal' data type. This data type has been removed in later versions of RSMP due to 'ordinal' beeing to ambigous. The proposal is to change the 'ordinal' data type to 'integer' in order to prepare for future versions of RSMP.
The data type is not actually sent in the communication so the expected impact for any implementations is minor.

does "integer" imply a signed integer (as in e.g. c++)?

According to the RSMP specification, an integer implies an 16-bit signed integer, [-32768 – 32767].

ok thanks for clarifying

I'm not a fan of this change. It doesn't affect our implementation, but I think the ordinal datatype was important to have.
I'm currently looking at a VMS project in Sweden, and for instance we have 4 possible values for a speed sign (50,60,70,80 or something like this). It's unclear what is supposed to happen if we change the field to Integer and the server suddenly sends "74".
Ordinal made it possible to limit values on an SXL level, which was a very nice feature.

you mean you had a hardcoded list of possible values (50, 60, 70, 80), and 1 would select 50, 2 would select 60, etc?

no, 50 would select 50, etc.
But if the data type is integer, what happens if you send 48? or -260? Should the speed limit be changed to -260? (you can only go backwards by max 260km/h??)
It's good practice to have a way of limiting allowed values :)

not sure i understaand you. ordinals are not limited to 10,20,30,40...?
https://en.wikipedia.org/wiki/Ordinal_number

No, in general Ordinals can be of any "datatype" that satisfy the requirements for ordinality, which just means an ordered set where it's possible to go forwards and backwards in a defined fashion.
So, { monday, Tuesday, wednesday, .... etc } is also a ordinal set, it doesn't have to be integers.
But it's a set, so you have to predefine your values (and their order). This is exactly why I like it

you can still define a limited set of options on the device, like 40, 50, 60 and round input integers to nearest possible option, e.g. 34 => 30.
if an ordinal type suggest you can also send stuff like "wednesday" i think it get's confusing,
in any case it seems the ordinal type was already removed from rsmp @otterdahl?

This is not confusing at all!
Let say you want to set something with week-planning. Wouldn't it make sense to have an ordinal set with weekdays instead of just "String".
of course { 10, wednesday, 55 } is not an ordinal set.
It is removed in RSMP 3.1.3, but TLC SXL is currently using 3.1.2 of RSMP

well, why not just use a string, with the options of "monday", "tuesday", etc? i don't really see the value of having another type just to signal that the options are an ordered set.

Because the RSMP protocol doesn't have a concept of "Options"
String implies I can expect to receive any set of character
Integer implies I can expect to receive any number (in this case a signed 16-byte one)
Ordinal implies I can expect to receive a value from a set
We could rename it to Enum instead, which would make more sense, because I don't really care if it is ordered. But I'm missing a "set"
Let me give you an example:
If we change the type to Integer in my speed sign example above. The server sends a message to my RSMP connector, saying, set allowed speed to 34 km/h. I then have no choice but to answer back to the server "OK, will do". In the meantime I pass it down to the traffic logic, but of course (hopefully!) it recognises that this is not a sane value for a speed limit, or may not be supported by a not-full-graphic VMS. So it throws the order away.
Conclusion: Server was being told everything was OK with the order, but it was ignored.
If you have a set, the RSMP connector could check if the received value is part of the set, and actually return a meaningful error to the server. So it can show to the user that setting 34 is not an acceptable speed limit, and please report to drug testing ;)

if you don't have the actual values, an enum is not helpful. you could still send an enum with any value, like 34 og "zebra". btw, an enum typically also requires that you define the datatype.
as i see it, the datatype is just for tranporting the data and validation should be done on the device, not as part of a the protocol. on the device simply verify the input, and return an error if it's invalid.

of course you can't have an intermediate device that passes on invalid commands and returns OK regardless.

Just defining the data type as an integer doesn't neccecarily mean it is possible to send just any integer. The 'Value' column is used to define possible values. Take this example:

Type
Value

String
-Auto -Hand-70-50-Släckt

The type is 'string' but the only valid values are "Auto", "Hand", "70", "50", "Släckt". Any other values results in a NotAck. There are other situations where it's simply not possible to determine the exact allowed values in the sxl, since it depends on the programming of the controller, but it is OK to return a CommandResponse or NotAck if it doesn't work out. I would recommend  sending NotAck if you receieve "74" but expected "70".
We've recieved other feedback about "Ordinal" and "Scale" beeing to ambigous of a data type which has caused some implementations to assume ordinal to always be an interger - which has turned out not neccecarily be true. We would like to avoid any missunderstandings in the future.

This issue is related to the core spec, not the traffic light SXL? in that case i'll transer it to the core repo.

@emil. Not really. 'Ordinal' was removed from the core spec already in 3.1.3 (Back in 2014), but it is still used in the traffic light SXL.

I see. I'm in favour of removing the ordinal type.

Just to be clear. This changes not just the ordinal data type to integer or string, but also unit and scale

Fixed in 1.0.15


[usecase-embedding] Add a usecase for validating onTouchEvent

Impacted tests(approved): new 2, update 0, delete 0
Unit test platform: [Android]
Unit test result summary: pass 0, fail 2, block 0
Bug is reported
https://crosswalk-project.org/jira/browse/XWALK-4879

The text decription in the test page is already defined in the layout XML

In the manifest XML? I suppose this is a merge-delay issue. and it does matter if empty line in XML, right? Should remove them?

LGTM


I want to refetch data when i switch route, is the subscriptions' right place to work with?

what is best practical or preferred way to get inital data when switch route ?
users.js
require('./model')

module.exports = (state, prev, send) => render`

 // i've got infinite render loop

user list

    ${userForm(state, prev, send)}
    ${userList(state, prev, send)}

`

function userList(state, prev, send) {
  return render`

          avatar
          name
          username
          email
          website
          phone
          lorem

        ${state.users.map((user) => render`

            ${user.name}
            ${user.username}
            ${user.email}
            ${user.website}
            ${user.phone}
            ${user.lorem}

        `)}

  `
}

function userForm(state, prev, send) {
  return render`
    <form onsubmit=${submit}>
      <input type='text' id='username' placeholder='enter an username' required autofocus />
      <input type='submit' value='submit' />
      <input type='button' value='refetch' onclick=${refetch} />
    </form>
  `

  function submit (e) {
    e.preventDefault()
    let $username = document.getElementById('username')
    send('add', { payload: { username: username.value } })
    $username.value = ''
  }

  function refetch() {
    send('fetch')
  }
}

model.js
const faker = require('faker')

const _ = require('lodash')

app.model({

  state: {
    users: []
  },

  subscriptions: [
    (send, done) => send('fetch', done)
  ], // subscriptions only happen when the page reload, not on change route

  effects: {
    fetch: (data, state, send, done) => {
      let users = _.times(10, n => {
        return _.extend(faker.helpers.userCard(), {
          avatar: faker.internet.avatar(),
          lorem: faker.lorem.sentence()
        })
      })

      send('init', { payload: users }, done)
    }
  },

  reducers: {
    init: (data, state) => {
      return {
        users: data.payload
      }
    },

    add: (data, state) => {
      return {
        users: state.users.concat(data.payload)
      }
    }
  }

})

You'd want to be using https://github.com/shama/bel#lifecycle-events - they've got a few bugs at the moment, but it should get you there I reckon :sparkles:

https://github.com/crapthings/webpack-choo-undefined/blob/master/src/components/posts/index.js#L15
this still can't fetch data sometimes when switch route

@crapthings onload isn't always the same thing as switching routes -- particularly if the component with the onload hook is already mounted on the page (ie. /users/123 to /users/456). In that case, you can put some logic in your view to detect whether the state (including route params) has changed.
const view = (state, prev, send) => {
  if (!prev.params || !prev.params.user || prev.params.user !== state.params.user) {
    send('fetch', state.params.user)
  }
  return html`<div>...</div>`
}

(Also note that views don't have a done param -- that's only effects and subscriptions)

Closing because choo@5 will introduce a new API. See #425 for the merged PR. Thanks!


Error with Sample Rest API Setup

Following the online instructions for setting up Rest API results in a non functioning project.  https://docs.amplify.aws/lib/restapi/getting-started/q/platform/android#initialize-amplify-api
4.37.1
Same code as provided online except I use use path items instead of todo:

val options = RestOptions.builder()
    .addPath("/items")
    .addBody("{\"name\":\"Mow the lawn\"}".toByteArray())
    .build()

Amplify.API.post(options,
    { Log.i("MyAmplifyApp", "POST succeeded: $it") },
    { Log.e("MyAmplifyApp", "POST failed.", it) }
)

When I run the post request I get this error:

2020-12-07 09:49:58.260 18936-19071/com.example.restapi E/MyAmplifyApp: POST failed.
    AmplifyException {message=Received an IO exception while making the request., cause=java.io.IOException: Failed to read credentials to sign the request., recoverySuggestion=Retry the request.}
        at com.amplifyframework.api.aws.operation.AWSRestOperation$OkHttpCallback.onFailure(AWSRestOperation.java:131)
        at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:525)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)
     Caused by: java.io.IOException: Failed to read credentials to sign the request.
        at com.amplifyframework.api.aws.sigv4.AppSyncSigV4SignerInterceptor.intercept(AppSyncSigV4SignerInterceptor.java:202)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
        at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)
     Caused by: com.amazonaws.AmazonClientException: Failed to get credentials from Cognito Identity
        at com.amazonaws.mobile.client.AWSMobileClient.getCredentials(AWSMobileClient.java:374)
        at com.amplifyframework.api.aws.sigv4.AppSyncSigV4SignerInterceptor.intercept(AppSyncSigV4SignerInterceptor.java:194)
        at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.kt:109)
        at okhttp3.internal.connection.RealCall.getResponseWithInterceptorChain$okhttp(RealCall.kt:201)
        at okhttp3.internal.connection.RealCall$AsyncCall.run(RealCall.kt:517)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
        at java.lang.Thread.run(Thread.java:923)
     Caused by: com.amazonaws.services.cognitoidentity.model.NotAuthorizedException: Unauthenticated access is not supported for this identity pool. (Service: AmazonCognitoIdentity; Status Code: 400; Error Code: NotAuthorizedException; Request ID: 7688d7be-9c6c-4e0e-8de5-64271e4d0640)

Any relevant guides or documentation you're referencing: All code and CLI setup based on amplify docs online.

It appears the error is because I haven't used Amplify Cognito and pushed auth via the Amplify CLI.  However, there isn't any mention of adding this in the docs and during the cli instructions it says to allow unauthenticated access.

@fjnoyp I'm not sure about the issue. Do you have a REST API or a GraphQL API?
Can you show us the result in your terminal for amplify status.

Closing due to lack of response.


unist-util-map types Node and MapFunction stopped to be exported between v3 and v3.1.1

Initial checklist

[X] I read the support docs
[X] I read the contributing guide
[X] I agree to follow the code of conduct
[X] I searched issues and couldn’t find anything (or linked relevant results below)

Affected packages and versions
unist-util-map 3.1.1
Link to runnable example
https://stackblitz.com/edit/typescript-gjwbvb?file=index.ts
Steps to reproduce
Start a new sandbox and install the latest unist-util-map v3.1.1:
https://stackblitz.com/edit/typescript-gjwbvb?file=index.ts
notice the MapFunction and Node (and Parent) types are not exported any more
but they used to be exported on v3:
https://stackblitz.com/edit/typescript-qh1hrn?file=index.ts
which means, we introduced a breaking semver change during a minor bump!
Now, other consumers such as remark-directive-rehype are importing the unist-util-map with a caret semver, which causes them to break on fresh installs (stale lockfiles still contain working v3 references, so everything seems fine for those who have stale lockfiles and their package manager uses exact stale version v3)
https://github.com/IGassmann/remark-directive-rehype/blob/5dec9b98dcf8e071d2bd5b776f96123f459492f9/package.json#L34
Expected behavior
Let's restore the old type exports, specifically:
export type Node = import('unist').Node
export type Parent = import('unist').Parent
export type MapFunction = (node: Node, index?: number, parent?: Parent) => Node

If we really want to remove the types, then issue a patch with types restored and bump the major version, publishing this program with types removed.
Generally, to prevent mishaps like this, it's best to migrate the source to .ts source files and let the TypeScript generate the types automatically, using a bundler. The JSDoc can be used for examples etc but not as a source of type definitions. That's the setup I use myself, I use esbuild to bundle ESM (and sometimes optionally IIFE too) and rollup with rollup-plugin-dts to bundle up the type definition files. The JSDoc-based types from .js sources are a liability.
Actual behavior
type exports are missing currently
Affected runtime and version
n/a
Affected package manager and version
tested on both yarn and npm
Affected OS and version
n/a
Build and bundle tools
Other (please specify in steps to reproduce)

If we really want to remove the types, then issue a patch with types restored and bump the major version, publishing this program with types removed.

While I agree the types are removed unexpectedly, but I'm a bit disagree we should consider types changes as major.

I raised #7 to fix your usage.

hi Joun! Thanks for the quick turnaround!

This feels a bit like an instance of Hyrum's law.
Those interfaces were incidentally exported and were never part of this library's API.
I'm caution creating a semver major over a single plugin relying on an internal implementation detail.
IMO, this should be fixed in remark-directive-rehype by importing the types from the correct upstream location.

Generally, to prevent mishaps like this, it's best to migrate the source to .ts source files and let the TypeScript generate the types automatically, using a bundler

Unified uses plain JavaScript to avoid the issues needing layers of compilers/transpilers/bundlers.
If https://github.com/tc39/proposal-type-annotations becomes standard, we may move to that syntax. Until then JSDocs work well enough.

bit disagree we should consider types changes as major.
— Joun

I particularly agree about Node and Parent.
Those were accidentally exported (because TS treats JSDoc imports as exports too).
They were never documented, never supposed to be used, and that mistake was fixed.
To prevent that happening in the future, we now document what is part of the API: https://github.com/syntax-tree/unist-util-map#types.

To prevent that happening in the future, we now document what is part of the API

So missing MapFunctions from types is indeed unexpectedly while omitting Parent is intended, right?
I may need to remove https://github.com/syntax-tree/unist-util-map/pull/7/files#diff-e727e4bdf3657fd1d798edcd6b099d6e092f8573cba266154583a746bba0f346R3 in this case.

(because TS treats JSDoc imports as exports too)

TS treats JSDoc typedefs as exports, not imports. To assign every import to a typedef is a stylistic choice that leads to issues like this.
Many of these issues would be resolved by https://github.com/microsoft/TypeScript/issues/46407.
Regardless, I agree people shouldn’t import these type aliases from packages like unist-util-map. They should just import from (@types/)unist. So I don’t really consider their removal to be a breaking change.

To assign every import to a typedef is a stylistic choice that leads to issues like this.
— Remco

It is a choice, though I don’t think it’s just stylistic to import things from other files at the top of a file: that’s how a lot of languages work, and it works well.
I think that it is highly impractical to use a different “stylistic” choice. To only use “import expressions” and never assign them. It makes the file verbose because long lines are repeated a lot, and hard to maintain because it is unclear which dependencies are in use.

I am assuming that the @revelt does not care about the addition of MapFunction to index.js, if Node and Parent will not be, as a type error in remark-directive-rehype will keep ocurring.
I am personally open to expose MapFunction from index.js, if this indeed properly works.
I was under the impression that generic parameters could not be exported like this? If it is supported, then I don’t think it was earlier? We should perhaps check that it actually works, that the generic parameter can be set?
If all of this works, we can update the documentation, that MapFunction should be imported from this package, and not from complex-types.

I was under the impression that generic parameters could not be exported like this?

It is supported, you can review my PR #7

I don't know. 😂
I just searched and found the solution.

OK, I checked, it works in TS ^4.5, it does not work in 4.4 and lower. The root problem then is:
index.js:6:21 - error TS1069: Unexpected token. A type parameter name was expected without curly braces.

6  * @template {Node} [Tree=Node]

The last release of TS 4.4 was on 2021-12-10. Do we think it’s fine to break that?

Do we think it’s fine to break that? (I am open to it)

I'm fine with it, and it should only affect contributors of this package, right?

Released in 3.1.2! Thanks @JounQin!


Add add_transaction feature

close #4

@krlove98 Can you resolve conflicts?
You can resolve them by pressing Resolve conflicts in this page or executing git merge main in your terminal.


Update MXNet version to 1.7.0-backport

Hey @frankfliu  I tried this on my box (osx 10.13.6) and it fails with a similar exception as I observed for Tensorflow.
Here is the log:
2.459 seconds (JVM running for 3.157)
dyld: lazy symbol binding failed: Symbol not found: ____chkstk_darwin
  Referenced from: /Users/shapirov/.djl.ai/mxnet/1.7.0-backport-mkl-osx-x86_64/libmxnet.dylib (which was built for Mac OS X 10.15)
  Expected in: /usr/lib/libSystem.B.dylib

dyld: Symbol not found: ____chkstk_darwin
  Referenced from: /Users/shapirov/.djl.ai/mxnet/1.7.0-backport-mkl-osx-x86_64/libmxnet.dylib (which was built for Mac OS X 10.15)
  Expected in: /usr/lib/libSystem.B.dylib

Abort trap: 6

The log is clearly stating that it expects a lib  "which was built for Mac OS X 10.15)". Are we officially dropping support for all lower version of OSX?

The 10.15 (Catalina) complied binary seems not compatible with high sierra.
We are using github Actions to build macos release, and github actions only support Catalina: https://github.com/actions/virtual-environments/issues/461
And high sierra is EOL soon: https://computing.cs.cmu.edu/news/2019/eol-macos-highsierra#:~:text=High Sierra was replaced by,support on November 30th%2C 2020.
So I'm not sure if we want to spend effort to resolve this issue.
By the way, the tensorflow binary was provided by Tensorflow/Java team is also using Github Actions.


feat: captcha

Added captcha support. For adding the captcha anywhere on the page, one need to add a div like
<div class="turnstile-container">
</div>

Test URLs:

Before: https://main--icicidirect--aemsites.hlx.live/research/equity

After: https://captcha--icicidirect--aemsites.hlx.live/research/equity

[ ] New Blocks introduced in this PR
If yes, please provide details below

Block Name
Documentation

For e.g. carousel
doc-link

@sdmcraft I have updated the dom-builder in PR#81. I have updated your current pr with latest main branch so conflict at present


Cache the creation of the http client in the S3 storage

Right now the client creation happens at the creation of the storage, so for each query.
We could keep a pool at the factory level.
Establishing the connection takes up to 5ms.

Do you know why caching the Hyper connection pool is not sufficient? Does the S3 client close its connection on drop?

Yes it is already doing that.
get_aws_config() creates the connection pool.


[MAS2.4.6] [Headings and Labels -Welcome] ” Start by testing your bot, My bots ,How to Build a Bot “ are defined in heading   instead of heading

Actual Result:
” Start by testing your bot, My bots ,How to Build a Bot “are defined in heading  h3 instead of heading h2 present in the welcome screen
Expected Result:
”Start by testing your bot, My bots ,How to Build a Bot “ are should be assigned to h2 heading
Note: How to build a  bot heading size should be same with start by testing your bot heading
Repro Steps:
Turn on The NVDA

Open the Bot Framework V4 Emulator.
Welcome tab screen gets opened
Navigate to the headings using headings mode (H) key
Observe the issue

User Impact:
Users who rely on screen reader will be affected if the headings are defined illogical then the screen then the users will be affected to navigate to the screen.
Test Environment:
OS Build: Version 1903(OS Build 18362.239)
Application: Bot Framework V4 Emulator
Screen reader: NVDA
MAS Reference Link:
https://microsoft.sharepoint.com/:w:/r/teams/msenable/_layouts/15/WopiFrame.aspx?sourcedoc={0cf80872-800d-4643-90cf-0c1c3d3e6260}
MAS2.4.6_Welcome.zip

@DesignPolice This fix would require us to change the HOW TO BUILD A BOT header to match the other headers on the page since they are at the same organizational level, and must match each other according to the accessibility standards.
Here's how it would look:
Before:

After:

Any thoughts on this change?

I can live with that, can we make sure that we have a horizontal alignment with the type... either the baseline of the Bot Emulator line or the same line as Version 4

Strong work Showtime.


slurm: <IP_ADDRESS> -> <IP_ADDRESS>

Semi-automatic update generated by https://github.com/ryantm/nixpkgs-update tools. This update was made based on information from https://repology.org/metapackage/slurm/versions.
meta.description for slurm is: '"Simple Linux Utility for Resource Management"'.
meta.homepage for slurm is: '"http://www.schedmd.com/"
Compare changes on GitHub

Checks done (click to expand)

built on NixOS

The tests defined in passthru.tests, if any, passed

0 of 0 passed binary check by having a zero exit code.

0 of 0 passed binary check by having the new version present in output.

found <IP_ADDRESS> with grep in /nix/store/r9hg906jy5d5fk3kb71zwd9bdk4wsyh0-slurm-<IP_ADDRESS>

directory tree listing: https://gist.github.com/8b38c021725ed57fba3fec29d3caa209

du listing: https://gist.github.com/c03bd3ba99d45af84cc8b55534e0bca9

Rebuild report (if merged into master) (click to expand)

18 total rebuild path(s)
5 package rebuild(s)
5 x86_64-linux rebuild(s)
5 i686-linux rebuild(s)
3 x86_64-darwin rebuild(s)
5 aarch64-linux rebuild(s)
First fifty rebuilds by attrpath
python27Packages.pyslurm
python37Packages.pyslurm
python38Packages.pyslurm
slurm
slurm-spank-x11

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/r9hg906jy5d5fk3kb71zwd9bdk4wsyh0-slurm-<IP_ADDRESS> \
  --option binary-caches 'https://cache.nixos.org/ https://r-ryantm.cachix.org/' \
  --option trusted-public-keys '
  r-ryantm.cachix.org-1:gkUbLkouDAyvBdpBX0JOdIiD2/DP1ldF3Z3Y6Gqcc4c=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(r-ryantm's Cachix cache is only trusted for this store-path realization.)
Or, build yourself:
nix-build -A slurm https://github.com/r-ryantm/nixpkgs/archive/f0f714d0fb17adc669fb19d9c7a5a680b1afb5f0.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/r9hg906jy5d5fk3kb71zwd9bdk4wsyh0-slurm-<IP_ADDRESS>
ls -la /nix/store/r9hg906jy5d5fk3kb71zwd9bdk4wsyh0-slurm-<IP_ADDRESS>/bin

cc @jagajaga @markuskowa for testing.

@GrahamcOfBorg test slurm


Python 2 precommit (Flink) is failing

https://builds.apache.org/job/beam_PreCommit_Portable_Python_Commit/6065/console
14:01:17 debug_error_string = "{"created":"@1568667677.197329889","description":"Error received from peer ipv4:<IP_ADDRESS>:55257","file":"src/core/lib/surface/call.cc","file_line":1052,"grpc_message":"Method org.apache.beam.model.job_management.v1.JobService/GetJobMetrics is unimplemented","grpc_status":12}"14:01:17 debug_error_string = "{"created":"@1568667677.197329889","description":"Error received from peer ipv4:<IP_ADDRESS>:55257","file":"src/core/lib/surface/call.cc","file_line":1052,"grpc_message":"Method org.apache.beam.model.job_management.v1.JobService/GetJobMetrics is unimplemented","grpc_status":12}"
Imported from Jira BEAM-8245. Original Jira may contain additional context.
Reported by: ibzib.

This has been healthy as far back as history goes on the cron job


restore version comparison updates #4173, run [pub Debian GemDownloads GitHubRelease GitHubTag Packagist]

Do Not Merge (til after the next deploy)!
Restores the version comparison updates originally made in #4173 that were temporarily reverted in #4252
Also ref #4227
Closes #4172

Messages

:book:
:sparkles: Thanks for your contribution to Shields, @calebcartwright!

  Generated by :no_entry_sign: dangerJS against 5d2d5715e5db2618a0aee62f49ea0d845f145d27

The deploy is running now. Let's give it a few days to bake under normal load before merging this. (Maybe until Wednesday?)

The deploy is running now. Let's give it a few days to bake under normal load before merging this and #4255. (Maybe until Wednesday?)

SGTM

Do we want to try to merge/test these before the swarm of Dependabot updates tomorrow?

Hmm, maybe best to do the dependencies first and push this off until next week?

Hmm, maybe best to do the dependencies first and push this off until next week?

I'm good with whatever is easiest. If we defer on this til next week then I'd like to re-open the two associcated issues that were closed with the original merges of these two PRs though

Okay, that seems fine. As long as I can get a deploy done over the weekend I think these can go in on Tuesday. I don't want to hold these up but my time on this is a little limited so I think it makes sense to optimize for smoothness.

I don't want to hold these up but my time on this is a little limited so I think it makes sense to optimize for smoothness.

Definitely agree!

Is there anything still blocking us, or can we go ahead and merged this and #4255?

Is there anything still blocking us, or can we go ahead and merge this as well as #4255?

Yes this is still intentionally blocked and should not be merged. Both of these PRs tie back to the major capacity issue we had several weeks ago, where we suspect that one (or perhaps both) of the original changes may have been the root cause since the resource/capacity issues subsided after those changes were reverted.
The point of these PRs is to attempt to re-apply the respective original changes in isolation to see whether or not they are indeed the culprits, and that requires them to be deployed and validated independently. I believe Paul's been exceptionally busy of late and we've simply not had the opportunity to be able to deploy them independently.

I have been super busy 🙃
Do you want to try to merge one of these and I'll deploy it?

SGTM!

@calebcartwright can we just merge this?

@calebcartwright can we just merge this?

@PyvesB  - I'll rebase to get the CI checks passing, but I don't have the bandwidth to go through the isolated deployment, monitoring, and potential rollback that we wanted to do with this. If anyone else does though then please feel free to go ahead

Realize this has been sitting for ages. To recap, this was reverted (along with #4254) because of a potential correlation with a performance event observed in our old OVH environment. I've had it parked for a while for various reasons, including some trial comparison periods we've been running with different http client libs.
This should be much easier to deploy in our current Heroku world given how easily we can roll back, though I think it probably warrants a reconsideration on whether it's necessary, and crucially, what the impact is on modifying the message values on existing badges.

This has been parked for so long that I wonder if it's worth at least revisiting whether this is something we should/want to do. The diff is of course still as simple today as it was ~2.5 years ago, but I'm a little worried about unintended/undesirable side effects (and no I don't have anything specific just a general hesitation/concern)
Curious what others think, especially whether it'd be safer/better to try to make this conditional and wrapped behind a query param

I'd say let's go ahead and merge it. We can always revert again if this causes issues or user complaints, but I don't think we should complexity things with a query param until we've proven there's a definite need for one.

Rebased so should be back in a ready-for-merge state.
Looking at the diff I can't conjure any rationale for this being a source of perf issues, though out of an abundance of caution would likely still advise whoever merges to promote to prod afterwards and monitor it for a day or so

I'm gonna merge this and keep a close-ish eye on production behaviour.


Allow using non-default branch

We might need to add a branch key to the manifest, since I believe it just uses the default now. This would allow people to have a marketplace-specific branch, or a branch that houses releases as opposed to dev stuff.

Or maybe have it like:
{
    "name": "Spicetify-Hide-Podcasts",
    "description": "Spicetify extension to hide podcasts.",
    "preview": "screenshot.png",
    "main": "release-branch:hidePodcasts.js",
    "readme": "README.md"
}

and just make everything that doesn't have a branch tag just implicitly be the default branch

It sounds like dribblish dynamic want just the builds on a different branch, with the readme etc on the main. The colon method would support that probably but makes things more complicated. Will have to revisit later.


Published packages using incorrect filepaths

The wheel packages built and published on pypi use a . for namespacing in the filename - yet when built with flit they produce packages that use _
This is important because pypa/installer uses the wheel filename to ascertain the paths of files inside
With the current setup sphinxcontrib-jquery is uninstallable by anything that uses pypa/installer (eg bazels rules_python) - and i suspect that some spec is broken somewhere

I have tested version 4 with python -m installer and it seems to work.
A


Page not found

The link here  https://docs.accordproject.org/docs/cicero.html is giving page not found, what should be in here.

It seems that the same issue has already been raised  Broken link #324


Bug: Schemata + Typegen break string literals, event suggestions, and ActorRef assignments

Description
I noticed a few problem with schemata + typegen:

String literals unions (e.g. "working" | "not-working") used in context are broadened to string, breaking selectors and other potential code that requires the string literal union.
Since 4.29 the result of spawning a machine is no longer assignable to an actor ref created with ActorRefFrom, which makes it nearly impossible to type the spawned machine for passing it around.
While preparing the code sandbox, I noticed that VS Code does not infer event types in the machine definition when schemata are used.

Expected result

String literals unions should be typed as string literal unions and not string.
Spawned machines are assignable to their corresponding ActorRef.
VS Code should suggest event types in <state>.on like it does when events are specified through the generic.

Actual result

Instead of preserving a literal union, the type is broadened to string.
A nasty TypeScript error appears.
VS Code only suggests "" and "*", not the actual event types.

Reproduction
https://codesandbox.io/s/floral-bush-yxn10?file=/src/index.ts
Additional context
In the sandbox, schemas are disabled by default and can be enabled by removing the comments (createMachine generics have to be removed as well).
XState Version: 4.29.0

I started changing my codebase over to typegen yesterday and was also struggling with typing errors on my ActorRefFrom. I assumed it was me missing something.

@christoph-fricke could you split this into 3 issues? being able to track those separately would make it easier to work with those.
For now, I've looked into the string literal case and I'm not yet sure what we can do about avoiding breaking changes. I already had a refactor plan for v5 that would just avoid this altogether but it's not an easy decision to use that strategy in v4. Potentially this could be fixed with overloads but overloads have their own set of problems that I'd like to avoid. We also could use NoInfer trick but that would break people relying on inference and using config.context to type this (instead of config.schema.context).
I've put together a simplified repro case for this here

I know this is going to be split into 3 separate issues, but looking at the issue withActorRefFrom, previous to 4.29.0, using type ChildActor = ActorRefFrom<typeof createChild>; i.e. typing on the factory function (from @christoph-fricke codesandbox https://codesandbox.io/s/floral-bush-yxn10?file=/src/index.ts ), would have worked. I think it now works changing to be typed like this: type ChildActor = ActorRefFrom<ReturnType<typeof createChild>>; i.e. on the machine, rather than the factory function.

Issues 1 and 3 are both being fixed by https://github.com/statelyai/xstate/pull/3084
For the second issue, I've created a minimal repro case here and I have a fix locally but I need to think about it more cause I don't fully understand the relationship between those types

Fix for the second issue is up here: https://github.com/statelyai/xstate/pull/3087


Definitions in flux-chat example are ignored

When I change or delete react definition from libs/react.js, flow command still gives the same result. Is it normal?
It behaves the same way like what is described in #608, but this is your own example code.

Closing due to lack of enough information.


Wow

Results seem very promising so far, do you think it is worth investing time to learn Triton?

most definitely!


Deobfuscation

Hi, I know this feature was planned for end of last year, is it implemented?
For now we need to use Crashlytics which does it out of the box and have it turned off for Splunk:
            .disableCrashReporting()
            .disableAnrDetection()

That's bad as we want all reporting to be centralized and you don't really integrate with Crashlytics at all.

Hi, thanks for sharing your use case with us. Capabilities related to mobile crashes are under consideration as we plan for FY24 however, we don't have any specific dates yet.

Please reopen for further discussion. Thanks.

Any news on this?

Hey Gabor- we're currently investigating this as part of our roadmap for next year.


CI/CD: Use build to build packages

Regarding https://github.com/googlefonts/gftools/actions/runs/3912606577/jobs/6687455671, it's best practice to use https://pypi.org/project/build/ for building packages (see it for instructions). @m4rc1e

We now do!


Add deny-all policies to CAPZ

We noticed that deny-all policies exist in other providers but not in CAPZ. We need to add them to CAPZ too.

@weatherhog is it something you want to take care of in Cabbage?
or should we/phoenix try to add it?
cc @T-Kukawka

@gawertm we are taking care of this in this issue https://github.com/giantswarm/roadmap/issues/3415

ok thanks closing this


Add format documentation (binary layout of index/chunks)

I've just read Fabian's blogpost which gives high level introduction to new V3 storage. I'd like to get more familiar with the binary layout of  index/chunks but I'm not sure where to look (should I dive deep into source code?). Are there some documents around that describe it and if so, can you link then in the README?

I plan to document the format while giving it another pass here and there – hopefully by end of month. Will update here.

@fabxc I think this can be closed.


Time to first response degraded by 2 -4 seconds since 0.4, SOLUTION

I noticed that OPENWEBUI takes 2-4 seconds longer to load chats.
By looking at the logs, the problem is clear, before every chat OPENWEBUI calls
get_all_models()
I have fixed this issue by adding the environment variables:
backend/open_webui/config.py
Line 533:
ALL_MODELS_CACHE_TTL = "1800"
OPENAI_MODELS_CACHE_TTL = "1800"
OLLAMA_MODELS_CACHE_TTL = "1800"

These are imported into the following files:
backend/open_webui/apps/main.py
Line 1007:
@cached(ttl=MODELS_CACHE_TTL) # Cache variable to control get_all_models()
async def get_all_models():

backend/open_webui/apps/ollama/main.py
Line 260:
@cached(ttl=OLLAMA_MODELS_CACHE_TTL)
async def get_all_models():

backend/open_webui/apps/openai/main.py
Line 372:
@cached(ttl=OPENAI_MODELS_CACHE_TTL)
async def get_all_models() -> dict[str, list]:

Obviously importing from aiocache import cached to each file, and adding the corresponding environment variable to from open_webui.config import (

Seeing this as well!


Default imports don't work with module resolution node16

🔎 Search Terms
"Default imports don't work with module resolution node16", "node16", "default imports"
🕗 Version & Regression Information

This is the behavior in every version I tried, and I reviewed the FAQ for entries about it

⏯ Playground Link
https://stackblitz.com/edit/stackblitz-starters-bakzhy
Node.js: Run using node src/index.js
Typescript: run using npx tsc and see the error!
💻 Code
import pino from "pino";

const prettyTransport = {
  target: 'pino-pretty',
  level: 'debug',
  options: {
    translateTime: 'HH:MM:ss Z',
    ignore: 'pid,hostname',
  },
};

const p = pino({
  transport: {
    targets: [prettyTransport]
  },
  level: 'debug'
})

p.debug('test');

🙁 Actual behavior
This expression is not callable.
  Type 'typeof import("/home/sina/Projects/test/node_modules/pino/pino")' has no call signatures.

🙂 Expected behavior
It works in Node (tested with v18 and v20), why does typescript show the error?!
Just run the code above in NodeJS, we have no double default issue and everything works as expected.
Additional information about the issue
This is related to #53349 and #50058#issuecomment-1404411380.

This package is incorrectly typed: https://arethetypeswrong.github.io/?p=pino%409.2.0

@jakebailey Can you elaborate a bit more?! Isn't node16 supposed to copy NodeJS behavior?! Also, we are not supposed to use Node16 then?! because it is not NodeJS behavior.

We have the same issue for ioredis package.
But the interesting thing is, according to this, the ioredis package doesn't have invalid types.

Just investigating further:
In ioredis, even when I comment module.exports =, the error won't be gone.

node16 does match Node runtime behavior for your code, the problem here is that the types for the module (.d.ts files) are telling TS the wrong thing about how its exports are structured.  In other words the problem is on the package author’s end.

Found the cause of the problem. closing.


Fix a bug that SpanList is not deserialized properly

This PR fixes a bug that SpanList is not deserialized properly.
Currently in Texera, we have a generic ListField<T>, however, the sole usage of this ListField is a Span List, which is ListField<Span>.
When the ListField<Span> is serialized to a Json String, the generic type (Span) information is lost.
When the same Json string is deserialized back to ListField, the value cannot be correctly converted to a Span because Jackson doesn't know it should be mapped to the Span Class.
Since we only have Span List, this PR adds a custom deserializer to map any value to Span class, so we can always get ListField<Span>.
This PR also modifies how Json serialization test cases work. Previously they only check after converting object to json back and forth, if the json results are equal. Now they also check if the actual Java objects are also equal. As a result of this update, two more Json serialization errors are fixed.
However, this is a temporary solution. A better solution is to either:

Get rid of generic ListField<T> completely, make it SpanList since we only allow spans.
Support any generic ListField, but store the generic type information in Json.

@zuozhiw : let's do a F2F review.

Per our F2F review, LGTM.


warpd: init at 1.0.2-beta

Description of changes
https://github.com/rvaiya/warpd
Things done

Built on platform(s)

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

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

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[x] Fits CONTRIBUTING.md.

Thank you for your work! I just tested this, compilation works fine. I'm not familiar with warpd and ++ didn't work for me, but I also have an unusual setup (no desktop manager, xmonad as window manager). From the GitHub repository, I got the impression that there is a manpage. Is that right? If so, it would be nice if we could install it as well. There is installManPage for that.
Otherwise, LGTM, would merge this (after the two minor fixes) if I had the permissions. :-)

@Enzime Thanks for packaging warpd.
I noticed that warpd can be compiled for X11 or Wayland. Should this package maybe be renamed to warpd-x11 just so there's no confusion?

@rvaiya Just bringing you in on this, as you mentioned that you wanted to be contacted if anyone was interested in packaging warpd for another distro

Obsoleted by #181300


add handling for sourceFolder (relative paths) and compound folders (…

…aura/myComponent)
Try this against /mshanemc/LightningErrorHandler, for example.   That uses the sourceFolder option.
The original version was getting things from /src/ folder that matched the folders.  The original split('/') didn't support folders like /aura/someComponent because of the slash.  Now it does.

@wadewegner poke!  you've not been busy this past couple weeks, have you?  :)

Sorry, just saw this for some reason! I'll review shortly.


Rng should not require Sized

Currently, Rng requires Sized, which seems unnecessary. This prevents some useful patterns such as a function taking a FnMut(&mut Rng) parameter.

Object safe Rng is definitely desirable. The intention is to give it the same treatment as Iterator got.

I was here and tried it out. It's not so simple. To really work well, the trait rand needs to change to R: ?Sized + Rand, and many other locations too. But that Rand trait change is the core to making it viable.

Should be fixed now. I must have been confused with my previous comment.

Thanks @bluss!


python310Packages.objax: switch back to GitHub for sources

Description of changes
As https://github.com/google/objax/issues/263 has been merge, we can start using the github sources again for objax.
cc @ndl
Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

happy to merge once we get a clean nixpkgs-review

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

4 packages built:

python310Packages.objax
python310Packages.objax.dist
python311Packages.objax
python311Packages.objax.dist


[Question] On GithubBrowserSample, how are ViewModel dependencies injected?

Hi,
Thanks for the very useful examples! They were really helpful!
I have two (probably basic) questions regarding Dagger and injection in ViewModels.
Sometimes we want to inject some dependencies in our class constructor. To do that, we just annotate our class constructor with @Inject and the dependencies passed to the constructor will be provided.
In the Architecture Components ViewModel, if we want to pass parameters to a ViewModel constructor, we have to use a Factory that knows how that ViewModel is instantiated. So I assume just annotating the ViewModel with @Inject wont't work, since it is the Factory that is providing the ViewModel instance, not Dagger.
I saw that you do exactly that and use GithubViewModelFactory.java to provide instances of ViewModels.
However, I don't understand two things in this class:
1 - How (T) creator.get() knows how to return a ViewModel instance with its dependencies injected on it?
2 - GithubViewModelFactory.java receives a Map<Class<? extends ViewModel>, Provider<ViewModel>> creators on its constructor. Where is this Map coming from?
Thanks! :)

The answer to your questions is in the ViewModelModule file.
The magic is done by Dagger via the @Binds and @IntoMap annotations. A Map<K, Provider<V>> is generated via the @IntoMap annotation and that Map is the constructor param for GithubViewModelFactory

Oh, everything makes sense now!
Thank you very much @florina-muntenescu ! :)

@florina-muntenescu why is the ViewModelModule decleared a @Singleton? Doesn't that make all injected repositories @Singleton too?I do find this a common sense in the case wehre we'd want a VM across activites.
Is it possible to scope the factory to a releated scope usage?

But it does not work for me.I have defined ViewModelKey like below:
@Documented
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@MapKey
@interface ViewModelKey {
    Class<? extends ViewModel> value();
}

and ViewModelModule:
@Module
abstract class ViewModelModule {
    @Binds
    @IntoMap
    @ViewModelKey(SearchViewModel.class)
    abstract SearchViewModel bindSearchViewModel(SearchViewModel searchViewModel);
}

and AppComponent has include the module:
@Singleton
@Component(modules = {
        ViewModelModule.class,
        AppModule.class,
        AndroidSupportInjectionModule.class,
        ApplicationModule.class,
        ActivityBindingModule.class
})
public interface AppComponent extends AndroidInjector<DaggerApplication> {
    void inject(ViewerApp viewerApp);

    @Override
    void inject(DaggerApplication instance);

    @Component.Builder
    interface Builder {

        @BindsInstance
        AppComponent.Builder application(Application application);

        AppComponent build();
    }
}

But when build the project, i got this in gradle console:
[dagger.android.AndroidInjector.inject(T)] java.util.Map<java.lang.Class<? extends android.arch.lifecycle.ViewModel>,javax.inject.Provider<android.arch.lifecycle.ViewModel>> cannot be provided without an @Provides-annotated method.

Is there someone i miss? @florina-muntenescu

maybe you should return ViewModel , not the SearchViewModel

What to do when in MyViewModel need to inject something with scope from some subcomponent?

@lexgorbunov
I also have the same problem if  MyCustomViewModel  that provided by App scope  depends on other object  that provided by user scope.
Just move  MyCustomViewModel to user scope  to fix it.
If someone has better answer, @me please!

@florina-muntenescu Why you have to override the in ViewModelFactory? What is the purpose GithubViewModelFactory? What is wrong with the default implementation of ViewModelFactory?

Leaving a note in case anyone else has the same issue I did when following this sample using kotlin.  If you get this error (same as https://github.com/googlesamples/android-architecture-components/issues/141#issuecomment-344869162)
java.util.Map<java.lang.Class<? extends android.arch.lifecycle.ViewModel>,? extends javax.inject.Provider<android.arch.lifecycle.ViewModel>> cannot be provided without an @Provides-annotated method.
You'll need to add a @JvmSuppressWildcards annotation to the creator map's value type:
@Singleton
class ViewModelFactory
@Inject constructor(
        private val creators: Map<Class<out ViewModel>, @JvmSuppressWildcards Provider<ViewModel>>
) : ViewModelProvider.Factory {
    ...
}

How would you fix this for java? I don't think @JvmSuppressWildcards is part of the java library? Any thoughts?

I'm getting the same error too, anyways to fix it? Adding @JvmSuppressWildcards doesn't work

@LeaYw you need to bind the factory also, like this -
@Binds
@Your scope (
abstract ViewModelProvider.Factory bind<yourViewModelFactory>(<yourViewModelFactory> factory);

@lexgorbunov
I also have the same problem if MyCustomViewModel that provided by App scope depends on other object that provided by user scope.
Just move MyCustomViewModel to user scope to fix it.
If someone has better answer, @me please!

Yes, this is the first thing need to check.

But it does not work for me.I have defined ViewModelKey like below:
@Documented
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
@MapKey
@interface ViewModelKey {
    Class<? extends ViewModel> value();
}

and ViewModelModule:
@Module
abstract class ViewModelModule {
    @Binds
    @IntoMap
    @ViewModelKey(SearchViewModel.class)
    abstract SearchViewModel bindSearchViewModel(SearchViewModel searchViewModel);
}

and AppComponent has include the module:
@Singleton
@Component(modules = {
        ViewModelModule.class,
        AppModule.class,
        AndroidSupportInjectionModule.class,
        ApplicationModule.class,
        ActivityBindingModule.class
})
public interface AppComponent extends AndroidInjector<DaggerApplication> {
    void inject(ViewerApp viewerApp);

    @Override
    void inject(DaggerApplication instance);

    @Component.Builder
    interface Builder {

        @BindsInstance
        AppComponent.Builder application(Application application);

        AppComponent build();
    }
}

But when build the project, i got this in gradle console:
[dagger.android.AndroidInjector.inject(T)] java.util.Map<java.lang.Class<? extends android.arch.lifecycle.ViewModel>,javax.inject.Provider<android.arch.lifecycle.ViewModel>> cannot be provided without an @Provides-annotated method.

Is there someone i miss? @florina-muntenescu

in my case , i was updated my Kotlin version to '1.3.30' !
i have just changed it to "1.3.21" and problem has been fixed

I had this problem

java.util.Map<java.lang.Class<? extends android.arch.lifecycle.ViewModel>,? extends javax.inject.Provider<android.arch.lifecycle.ViewModel>> cannot be provided without an @Provides-annotated method.

in my case , i was updated my Kotlin version to 1.3.30 !
i have just changed it to 1.3.21 and problem has been fixed.
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.21"
implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:1.3.21"

in my case , i was updated my Kotlin version to 1.3.30 !
i have just changed it to 1.3.21 and problem has been fixed.

Your case is another issue though from https://youtrack.jetbrains.com/issue/KT-30979

in my case , i was updated my Kotlin version to 1.3.30 !
i have just changed it to 1.3.21 and problem has been fixed.

Your case is another issue though from https://youtrack.jetbrains.com/issue/KT-30979

Thank you so much :+1:
I just lost 2 days on this that I'll never get back. I guess that's the price of being an early adopter.

I truly haven't a clue what i'm doing wrong, my instance of my ViewModelFactory is always null on my fragment so i presume it isn't injecting properly, i do a debug on this sample and it goes into it fine, but not mine.
Not a clue why not, as far as I can see other than some basic name changes, it's the same thing!  Initially started with the sunflower app and slowly been redesigning to work with this as i realised sunflower app doesn't use Rest at all.

@starkej2 thanks for that fix, but can anyone explain why it is needed or how it fixes the issue? @florina-muntenescu ?


fix: disallow dashes in repo name

When creating a new repo, it is currently allowed to create with a dash in the name, which immediately fails aiken check:

This fixes it.

I think the better fix would be to actually allow hyphens in module names 🧐
There's some stylistic debate with this probably and I am sure @rvcas has a strong opinion on it.
But I'd find this to be a quite saddening user experience to realize only after having created a repository that the name is deemed invalid by the compiler. Especially on something as common as an hyphen.

@KtorZ I told him to block it, we do not support kebab case as var names. The alternative would be to catch this and then replace - with _ for them. but otherwise I would just block it.

I don't think replacing will work as it opens the gate to spoofing attacks now. Someone can register a project with underscore in the name and try to hijack an established one.
Given that repository names will never serve as variable identifiers, I think it's fine here to have the parser accept hyphens while still forbidding them in module and variable names

@KtorZ register a project? You mean in some registry? I believe crates.io handles it fine.


fix forward type reference in Pydantic schemas

This small change addresses an issue that, unfortunately, I don't have a good test case to demonstrate. I've only been able to reproduce it with one specific API spec file... and only in my fork. Ordinarily I wouldn't submit an upstream change due to something that's only ever happened in my fork. However, in this case:

I never changed any code in openapi_schema_pydantic/ in this fork.
The code path that is raising the error also has no changes. It's this line in schemas.py, where it's trying to construct a Parameter instance. The error message ("Parameter is not fully defined") indicates that the problem is not the arguments to the Parameter initializer—it's the Parameter class itself, which Pydantic considers to be invalid. The message also indicates that the "not fully defined" part is a forward reference to the Header class.
The forward reference (in encoding.py) existed in order to avoid an import cycle between Parameter, Encoding, and Header. That should be fine, and was working fine till now with exactly the same code in these Pydantic models. However...
Per the Pydantic docs, the logic for lazily resolving forward references is extremely complicated, and in some hard-to-define cases it can fail. In that case they advise doing what I've done here: calling model_rebuild() on the class that's getting the error, after the previously-undefined class has been defined.

Because of all that, my theory is that there is some extremely subtle interaction between my other changes in the fork which, under some very specific conditions related to the particular spec I was testing with, maybe led to modules being imported in a different order... or something like that. This apparently had no effect on anything else, but made a difference in Pydantic's lazy-resolve mechanism. I can't characterize it any better than that, and I don't know how to write a test for it (although this fix does solve my use case). But I do believe this workaround is valid according to the docs and doesn't cause problems under any other circumstances. And I suspect that the circumstances under which it was working were brittle enough that some other completely unrelated change could've eventually caused it to manifest in an equally confusing way, so you could see this as a fix-in-advance for that.
(The problem is not that header.py hadn't actually been imported before that line in schemas.py executed. I verified 100% for sure that it had been. It's something more subtle than that.)

Can confirm, was also struggling with this.
PydanticUserError: Parameter is not fully defined; you should
define Header, then call Parameter.model_rebuild().
I believe it happens when the parameters include references to components.
Changing to pydantic 2.10.1 fixed the issue

Hi, Pydantic maintainer here.
In 2.10, we did a complete refactor of the forward annotations evaluation logic to be more correct: it supports more edge cases, but also removes support for invalid use cases. This created some churn in libraries having invalid use cases implemented, but fixing it will result in safer code and better consistency.
Regarding the openapi-python-client, there's a couple places where things can be fixed. Taking the simplest example:
https://github.com/openapi-generators/openapi-python-client/blob/861ef5622f10fc96d240dc9becb0edf94e61446c/openapi_python_client/schema/openapi_schema_pydantic/encoding.py#L7-L22
Here, Header is imported in an if TYPE_CHECKING: block to avoid a circular import. At runtime, TYPE_CHECKING is False, so Pydantic has no way of knowing what it represents (and only sees the "Header" string, what we call a forward reference). To evaluate forward references, Pydantic provides what we call a namespace: a mapping of strings to objects. When Optional[dict[str, Union["Header", Reference]]] is encountered, we look into the namespace for "Header" to replace it with the actual type.
Before 2.10, this used to somehow work because our namespace management was poorly designed, and symbols that shouldn't resolve (like in the example above, where Header is not available at runtime in the module) were still present in the provided namespace (in most cases, this was when building Encoding while in the process of building another model, or when subclassing). In rare cases, this messy namespace management could be dangerous, as you could have different types of the same name in different modules and Pydantic could use the wrong one [^1].
To fix the issue, you can either:

Fix the circular import. This often requires a complete refactor of the module structure and is sometimes even not possible to do.
Call model_rebuild() in the right place, once everything is imported. This is the path of least resistance but you have to think about adding these calls whenever you define a model using an unknown forward annotation.

I'm working on a PR to suggest changes following the second option. @eli-bl, do note that https://github.com/benchling/openapi-python-client/pull/223 is not a complete fix. You might want to apply the same changes from my PR on the fork.
[^1]: For instance, see https://github.com/langchain-ai/langchain-google/issues/610#issuecomment-2493831993.

@Viicos, thanks for all of that context, and for submitting the alternate PR! I'll close this one and I'll also update the fix on our fork as per your advice.


[Request] better grenade prediction

Could u make a grenade prediction that draws smooth lines instead of changing the convar? Or could anyone kindly help with how to do this?

https://github.com/notgoodusename/osiriswithstuff/blob/master/Osiris/Hacks/GrenadePrediction.cpp


Update Github Issue & PR Templates

Description
As the title suggest, this PR will updates the Github Issue & PR Template.
Changes

Remove old ISSUE_TEMPLATE.md
Add new ISSUE_TEMPLATE folder as recommended by Github
Add Github issue template config.yml
Add Github issue template for bug reports
Add Github issue template for feature requests
Add Github issue template for documentation fixes
Add Github issue template for documentation new
Add Github simple initial PR template
Add Github PR template for bug fixes

Additional context
Closes #489

I'll make a commit updating them soon.

OK.  Merged.


Could not resolve all artifacts for configuration ':react-native-document-picker:classpath'.

hi
when npm i --save react-native-document-picker
install done
but when run project
this error show
Could not resolve all artifacts for configuration ':react-native-document-picker:classpath'.

Could not find builder.jar (com.android.tools.build:builder:3.3.1).

hi, sorry you're having an issue. This repo requires that you provide a runnable example that reproduces your issue.
The reason is that I do not have time to try reproduce bugs myself. Please try to minimize the superfluous code and focus only on reproducing the bug.
Please create a new issue with this and we'll be happy to review it!


Information update

Deleting old information and redirecting the user to the current and updated document.
Problem: https://github.com/MicrosoftDocs/windows-itpro-docs/issues/5514

@JohanFreelancer9 for copy review. Thank you.

Ready to go live.

#sign-off


E2E: Add Android to pool of devices to test

Requirements

Although application still doesn't offer support for mobile devices, add Android to the list of devices where e2e tests will be performed


Add script to generate hard filtered samples

This script adds hard filtering. I left what I considered to be TODOs commented in the code, e.g. determine threshold cut offs through visual inspection. I've tested this code on the test VDS so all samples are failing given the small number of variants.
This also adds a failed fingerprinting table resource.

There are still some TODOs on this PR because I'm not sure what sample QC hard filters we will actually use. I think it's overkill to add min and max options for all possible sample QC metrics, and I would like to see the full gnomAD v4 sample QC metric distributions. This file will need to change after we determine the best hard filtering for gnomAD v4

@klaricch will first look over just the sample QQ generation

One question is, should the sex imputation addition just be its own argument that makes the final file, with an intermediate file made without it rather than an option that determines what is in the final file?

I think I like the former. How would that option for the latter be structured?

One question is, should the sex imputation addition just be its own argument that makes the final file, with an intermediate file made without it rather than an option that determines what is in the final file?

I think I like the former. How would that option for the latter be structured?

As is it will always write using
    .write(
                get_checkpoint_path(
                    f"test_gnomad.exomes.hard_filtered_samples.ht"
                )
                if test
                else hard_filtered_samples.path,
                overwrite=args.overwrite,
            )

No matter what the value of args.include_sex_filter is. But I'm wondering if instead we should include that in the name of the file if it's not set?


sails-permissions hook - installModelOwnership not being applied to orm build

I have an issue with the installModelOwnership method - it doesn't get called until after orm is loaded, but by that point buildOrm is already called.  This causes issues with sails mongodb, doesn't correctly parse createdBy and owner as foreign keys.
To get around this I did the following in the configure method of the permissions hook, but not sure if that's the best way:
	configure: function () {
    		 ...
		var origLoadModels = sails.modules.loadModels;
		sails.modules.loadModels = function (cb) {
			origLoadModels.call(this, function (err, modules) {
				installModelOwnership(modules);
				if (cb) cb.call(this, err, modules);
			});
		};
    	}

Without the above fix, I end up with something like this
{
  "createdBy": {
    "_bsontype": "ObjectID",
    "id": "U¶^eû3´7àù"
  },
  "owner": {
    "_bsontype": "ObjectID",
    "id": "U¶^eû3´7àù"
  }
}

instead of this
{
  "createdBy": "55b65e65fb3398b437e09af9",
  "owner": "55b65e65fb3398b437e09af9"

+1, createdBy and owner are not automatically set even in db model. ORM hook says
   // NOTE: If a user hook needs to add or modify model definitions,
    // the hook should wait until `hook:orm:loaded`, then reload the original
    // model modules `orm/loadUserModules`. Finally, the ORM should be flushed using
    // `reload()` below.

but I don't know how to reload.

You can reload by doing sails.emit('hook:orm:reload');  Although reload will run the orm/loadUserModules again before it orm/buildsOrm, which removes any modifications.


[bug 1193330] Remove eq_ and ok_: search

This commit removes eq_ and ok_ imports as well as their use in the
files under search directory. It replaces eq_ and ok_ with proper
assert statements.

Awesome!


Event page

From @kyyberi on October 17, 2015 4:47
For each event I want to see:

location: address and map, City with big font clearly
Title
Organizer
Agenda
list of participating people

I also want to comment events, add pictures and review the event after it has ended.
Copied from original issue: APIOps/portal#21

This issue was moved to APIOps/apiops-meetup#9


CredentialsService

Service with abilities to update users' username/email and password
Config (rehash options, password confirmation when changing, etc.)
CredentialsRequest

Cool, you can do it.

You can include it into AuthBootloader.


Extension issue

Issue Type: Bug
Extension Name: LiveServer
Extension Version: 5.6.1
OS Version: Windows_NT x64 6.3.9600
VSCode version: 1.54.2

{
	"messages": [],
	"activationTimes": {
		"codeLoadingTime": 19355,
		"activateCallTime": 2,
		"activateResolvedTime": 2,
		"activationReason": {
			"startup": true,
			"extensionId": {
				"value": "ritwickdey.LiveServer",
				"_lower": "ritwickdey.liveserver"
			},
			"activationEvent": "*"
		}
	},
	"runtimeErrors": []
}

I now found out this project has not been updated for over two years. I guess its time to shut it down.


Port extensions path fallback

Port of #478 (thanks @radical !) to master.
Tried to do minimal changes (merge conflicts + #if code that doesn't apply to master).
The goal here is to experiment shipping MSBuild out of the GAC / Registry / Program Files under Visual Studio. This would mean an Import to targets under Program Files would try under the MSBuild folder first then fallback.
Related to #558

You need https://github.com/radical/msbuild/commit/8d3a7519fe3ecd84df04737c800bd0247b99cf1d and https://github.com/radical/msbuild/commit/86382b3b8d0549fb16e3096f63c3fa3d92992d36 also.

I'll be opening a new PR for xplat with the above and a couple more commits to fix windows/mono build.

Opened PR #563 with the fixes for the tests, but for xplat.

:+1:


Tracing use cases and interface

We discussed during the last WG about the usage interface for the V8 tracing API (on-demand vs. continuous streaming) but we should define some concrete use cases and define as our goal to achieve a usable interface for consuming and/or retrieving all the tracing informations.

I think a good first step would be to make sure that the tracing infrastructure can do what the dtrace/etw/lttng/systemtap USDT probes do now.  There are only a handful of them so that shouldn't be a huge undertaking.  For posterity:
lib/_http_client.js:163:  DTRACE_HTTP_CLIENT_REQUEST(this, this.connection);
lib/_http_client.js:410:  DTRACE_HTTP_CLIENT_RESPONSE(socket, req);
lib/_http_server.js:100:  DTRACE_HTTP_SERVER_RESPONSE(this.connection);
lib/_http_server.js:473:    DTRACE_HTTP_SERVER_REQUEST(req, socket);
lib/net.js:402:  DTRACE_NET_STREAM_END(this);
lib/net.js:1424:  DTRACE_NET_SERVER_CONNECTION(socket);

(The DTRACE_ prefix is for historical reasons, we should rename them.)
Once that works, we can think about adding trace points to e.g. the ArrayBuffer allocator, the various Wrap constructors/destructors, and so on.
Sounds reasonable?  Who's volunteering?

I'm fine to implement that, but what would the API be? The hooks I'm thinking of would live in the native code, not in JS.
Additionally I think it's a poor JS API decision to simply call the function and say "it's a noop". Because in reality it isn't.  Especially if they're going to be injected into more and more locations in the future.

@lucamaraschi: […] we should define some concrete use cases […]

From https://github.com/nodejs/node/issues/4496:
As a developer, I want to see when garbage collections happen and
how long they take in the production environment so that I can get a
feeling for GC pressure and the behavior of my application.

@trevnorris: The hooks I'm thinking of would live in the native code, not in JS.

Assuming that you define hooks as "an API to access trace data": I'd really like to see a JS API for that. This is mainly because of the reasons I outlined in https://github.com/nodejs/node/issues/4496:

Users of such monitoring tools, or more generally users interested in GC activity, need to compile native addons in order to access this information. It is hard to explain why users need to do this (or have a package such as build-essential installed). This gets increasingly harder in Java shops which are used to having everything in the platform. Building these addons automatically on install only reduces this problem, but doesn't remove it.

Being able to retrieve this information from JS directly would mean that monitoring tools could ship with fewer addons.

I didn't mean there wouldn't be a JS API, only that the hooks/counters would exist in the native side.

closing old AsyncWrap issues, please start a new thread if appropriate
The API and format discussion is continuing in #53


CCM relnotes 80301 correction

Harness Developer Pull Request
Thanks for helping us make the Developer Hub better. The PR will be looked at
by the maintainers.
What Type of PR is This?

[ ] Issue
[ ] Feature
[x] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[ ] Optional Screen Shoot.

GitHub definitely did something weird here. I was on a new branch I created and made changes to some CCM release notes content. A few minutes after I created this PR, April informed me that the files updated were not CCM files but CI release notes files. Closing this PR.


MMU and memory support?

Are there any plans about MMU and physic & virtual memory management?

Hi,
I'm currently working on "part12" which will add a lot more graphics capabilities (all still CPU/GPU). That's required me to start implementing some ultra-simple heap management (still just physical memory) - basically malloc & free in lib/mem.c. I'm avoiding MMU/virtual memory for now as it gets very complicated quite quickly.
After I've got the graphics library finished, I plan to consolidate all my work so far.
Have you bztsrc's tutorial on virtual memory? https://github.com/bztsrc/raspi3-tutorial/tree/master/10_virtualmemory. Some changes may be required to make this work on RPi4... It's something I'm looking forward to, but I want to finish my graphics work first ;-)
Hope it helps!
A

Thanks for your reply 👍