API: specify the basemap / tile source (online tile provider, local file)

https://github.com/darribas/contextily/pull/66 is adding new definitions of online providers (which information is encoded in a dictionary with a 'url' key and additional metadata, similar as what ipyleaflet is doing: https://github.com/jupyter-widgets/ipyleaflet/blob/master/ipyleaflet/basemaps.py)
That PR sparked some discussion about the API how to specify this basemap "source". See https://github.com/darribas/contextily/pull/66#issuecomment-517176827 and subsequent comments.

So trying to summarize the discussion in the other issue:
Current situation:

Many functions (add_basemap, bounds2img,  bounds2raster, ..) have currently a url keyword:

For bounds2img/bounds2raster, this can only be a reference to an online provider (I think?), while for add_basemap this can also be a path to a local file.
With the new providers module, this "url" can now also be a dictionary with several keys (including an "url" key) in addition to a string (url to be formatted), so the keyword name "url" might not be perfect anymore.
It can be unintuitive that url can take a string or a dict that, among other things, has a url with a string.

So that gives some options / questions:

Should local files have their own keyword (maybe path)?
Should we use a new keyword for the provider dict (maybe provider)? And should this accept a plain url string, or should we keep those as separate keywords?
Both online tiles and local files can also be specified with a provider object, which is a dict that contains all the arguments needed. This would allow having a url or a path in the dict and using the attribution. Arguably, it'd be more useful for online providers but could serve a purpose for local files.

As I said in the other issue, if we go for multiple keywords, I would personally split on "functionality" (online tiles vs local file) and not on type (dict vs string).

That gives some concrete options:

Keep as is: url can take all of url string, provider dict or local file path string
Split in url and path: url for online tiles as url string or provider dict and path as local file path string
Split in provider and path: provider for online tiles as url string or provider dict and path as local file path string
Split in url, provider and path: url still for string urls, provider for the full dict, and path as local file path string
Keep a single keyword (variant of first option), but rename it to eg source (to not have the confusing "url" name for things that are not urls).
...

Other options? Preferences?
(note: I think any of the above can be done in a smooth way with providing deprecation warnings for the existing way where needed)

Thanks for the summary @jorisvandenbossche! My personal preference would be to keep url to maintain backward compatibility (I could be ammened to break that but, if we can avoid it, I think it's better), so you can pass a url string or a local path; and add a new argument called provider that is the dict structure we've been using.
My sense here is that the user would have two alternatives:

Fill in the details herself (pass a url, a zoom, etc.)
Go with what we provide and just pass a provider object

The user would then override anything from the provider explicitly by passing the provider object and specific arguments (e.g. the zoom level).
This would only break the API in rc, so I'm better with that, and I think it's more encompassing. What do you think?

(added that to the options above)

The user would then override anything from the provider explicitly by passing the provider object and specific arguments (e.g. the zoom level).

Note that the provider dict does not hold the zoom level (it only has information about a maximum zoom level, but this is not the same as the zoom specified for this specific plot). So this argument is currently only relevant for the attribution keyword I think.

My personal preference would be to keep url to maintain backward compatibility (I could be ammened to break that but, if we can avoid it, I think it's better)

Just to be clear: I think all of the options can be done in a backwards compatible manner in the strict sense: it doesn't need to break users code directly. We can keep the existing url for a long time for back compat, at some point with a deprecation warning.
Of course, not keeping the url long term indeed still means users will need to change their code at some point, so it's not backwards compatible in that sense that it needs some user action at some point in the future.

I don't have a strong opinion on what name to use (url, source, provider, ..) or whether to split off the local file into a `

I don't have a strong opinion on what name to use (url, source, provider, ..) or whether to split off the local file option into a separate path keyword. But splitting the web tiles into two keywords (depending on str vs dict) feels very strange to me. To repeat what I said in the other issue:
If we create new keywords, instead of splitting it based on the type like string (url) vs dict (provider), I would rather split it for functionality: online tile provider vs single local file.
In the end, a single url string could be seen as "just" a short-hand for passing {'url': url_string} that can be easily supported, also in the new provider keyword. While the local file path is really different: it signifies a local file (not url of tile provider) and a single file (not a bunch of tiles).
So in your hypothetical "what the ideal API would be if we didn't have the legacy we have?", I would personally not add 2 different keywords to specify the web tile provider. Because in the end, whether the user is passing a single url string, or the more information complete dict that includes this url, in both cases the user is trying to specify the source from which to download the web tiles (and also in a very similar way: by providing a url string (whether directly or in a dict) that has {x}{y}{z} to be formatted).

My sense is more that the provider object is an alternative that offers slightly different functionality in that it populates the url, provides info on zoom, helps manage login's, etc. while the url is a very simple method. I'd vote to keep both because if someone has a unique url that works in the standard XYZ way, they can pass it directly to url without creating dicts or anything, while for "official" sources, we can provide a provider object with all required info. One gives you a barebone access to basemaps, the other more of a "service" with everything that's required, is how I see it.
So, to me, the split is not really between dict/str but between degrees of "service" provided. But I might be too narrow focused and too set in the original way, so not really good to answer the question of how it'd be best done if we didn't have legacy. Maybe it's not so hard to do provider={'url': http...}?

I'd vote to keep both because if someone has a unique url that works in the standard XYZ way, they can pass it directly to url without creating dicts or anything,

To be clear, I never proposed to no longer allow people to pass a simple url string with {x}{y}{z}. I only tried to argue that for me it seems strange to introduce two separate keywords to either provide the url string or to provide the url dict. As in the end, both do exactly the same, and the simple url string is just a short-hand (that we keep supporting) for {"url": "url_string"}. So therefore, I would keep the simple url string / provider dict in a single keyword.

Personally, I would go for one of those options:

Just keep all in a single keyword (like we have now url), but maybe rename to source to make the keyword less confusing (but keep url as alias of it for backwards compatibility)
Have one keyword for online tile providers and one keyword for local file paths (pointing to a single image), eg source and path.

If we don't have a clear preference / agreement, I would propose to go with my first bullet point just above: just keep a single keyword, which is basically as it is now on master (but only use source as name and keep url as alias). This seems the most conservative / in line with what we already have, and isn't much work to do.
If that has a go (or one of the other options), I can do a PR next week, and we can release one of the coming weeks :-)

cc @ljwolf

Thank you very much @jorisvandenbossche for laying out the options and your patience with the back and forth. I've re-read the thread and had a second reflection on all this. I think I'm much closer to your views than when I wrote it in november.
The more I think about it, the simpler it seems to have a new source attribute to which you can pass anything suggesting a source of basemaps and it "just works", almost magically. From the user's perspective, it now seems pretty straightforward. I agree also on keeping the url argument so we don't break backwards compatibility (maybe we can add a deprecation warning before routing the objects to source and get rid of it eventually). While we're at it, we could also throw a deprecation warning on the tile_providers module as it currently stands because it's superseded by the new providers architecture.
Thinking about this, it would also work seamlessly if we eventually add support for local versions of XYZ tiles (#117), we'd just need to check whether the local path is a raster or a folder structure.
So, I'm +1 on your first bullet. To see if we're on the same page, is this what's left to do?

[ ] Add a source argument that can take either a providers-like dict, or a XYZ-type of url, or a path to a local raster.
[ ] Alias the behaviour of source on url and include a deprecation warning for the argument.
[ ] Add a deprecation warning to the current tile_providers module as it's a simple list of XYZ url's and it's superseded by the new providers API.

That'd be my bare minimum for 1.0, no? :-)

That looks reasonable to me!

I should also say, I'm happy that we're keeping a single argument for source that takes a dict or a string. I think that's the better, more flexible solution (over adding new singly-typed keyword arguments) until python gets fully in board with multiple dispatch :smile:


initial MMligner commit

Description
Wrapper to call mmligner with the alignment class
Todos

[ ] Write wrapper
[ ] Create temporary folder for files
[ ] Write test for wrapper
[ ] Create Conda recipe

Questions
Is the wrapper supposed to provide all functionalities of mmligner? No
Should the files created by mmligner be deleted by the wrapper? Use temp folder
Status

[ ] Ready to go

After the meetings today, all the PRs have been merged into a single one now living at https://github.com/volkamerlab/structuralalignment/pull/13. This PR will be closed now, but all your commits are in the new PR, so no worries at all :)
Don't create a new branch until @pipaj97 and I have merged that new PR into master! Message me if you need to work on it in the meantime and we'll come up with a solution.


How are images associated with camera calibration?

There aren't any links between RawImage/CompressedImage and CameraCalibration.
How does this work today? Should we add some place to reference a linked topic, or some concept similar to how frame_id works in 3D space?

@bhanug12 thanks for the feedback, I created a corresponding issue to track this in the studio repo as well: https://github.com/foxglove/studio/issues/3799


enums not usable in multiple models or fields within the same model

From @dzhelezov on Gitter:

Spotted the following issue with @EnumField. When I have two separated entities each having a field of the same enum type, the generated file generated/classes.ts imports the class twice. This causes an error, and I think that's b/c the enumfield decorator reexports whatever enum type is imported

The solution is to add an Enum decorator that registers the enum separate from the EnumField (or just make sure the EnumField decorator registers a unique copy per enum)

In order for this to not be a breaking change, we can’t require a new decorator, so we need to update the current flow.
The change needed is to ensure we’re only adding the import statement for each of these enums once here:
https://github.com/goldcaddy77/warthog/blob/a02a237b58269fd22b219c31b7a106a4d42af815/src/schema/TypeORMConverter.ts#L51
We just need to create a Set of the already imported filenames and don’t import if the file already exists.

Fixed in https://github.com/goldcaddy77/warthog/pull/403


ipam: Add ability to automatically create CiliumPodIPPool resources in multi-pool IPAM mode

Before this PR, we populated the multi-pool allocator from pre-defined pools based on the multi-pool-map flag. Since we added a custom CiliumPodIPPool resource however (c.f. #25824), there was a mismatch between those pre-defined pools (which are static and not backed up by a resource) and pools defined via CRD.
This PR addresses this mismatch by instead creating a CiliumPodIPPool resource for every pre-defined pool present in auto-create-cilium-pod-ip-pools. This means that those pre-defined pools are now regular pools that are automatically created upon operator startup. The name of the new flag is taken from the auto-create-cilium-node-resource flag which also creates resources upon startup.
Having the option to pre-define pools at installation time is important, because cilium-agent requires pod CIDRs at least from the default pool before it becomes ready. By providing an option to have cilium-operator auto-create some pre-defined pools, we solve this bootstrapping problem in an easy way. The alternative would require users to manually create
default pools after running helm install, which increases operational complexity.
Note that if the pre-defined pools already exist, the operator will not modify re-create or update them. This behavior is intentional, to avoid overwriting potential changes made by the user.
Meta: #25470
:information_source: Review per commit
Example values.yaml:
ipam:
    mode: multi-pool
    operator:
        autoCreateCiliumPodIPPools:
            default:
              ipv4:
                cidrs:
                  - <IP_ADDRESS>/16
                maskSize: 24
            mars:
              ipv4:
                cidrs:
                  - <IP_ADDRESS>/16
                maskSize: 24
            other:
              ipv6:
                cidrs:
                  - fd00:100::/80
                maskSize: 96

debug:
    enabled: true

# Kind values
image:
    override: localhost:5000/cilium/cilium-dev:local
    pullPolicy: IfNotPresent
operator:
    replicas: 1
    image:
        override: localhost:5000/cilium/operator-generic:local
        pullPolicy: IfNotPresent

# Datapath requirements for multi-pool
tunnel: disabled
autoDirectNodeRoutes: true
ipv4NativeRoutingCIDR: <IP_ADDRESS>/8
endpointRoutes:
    enabled: true
extraConfig:
    enable-local-node-route: "false"
kubeProxyReplacement: "strict"
bpf:
    masquerade: true

Will create three IP pools (default, mars and other), as can be seen with:
$ kubectl get cpip -o yaml   # abbreviated output
apiVersion: v1
items:
- apiVersion: cilium.io/v2alpha1
  kind: CiliumPodIPPool
  metadata:
    name: default
  spec:
    ipv4:
      cidrs:
      - <IP_ADDRESS>/16
      maskSize: 24
- apiVersion: cilium.io/v2alpha1
  kind: CiliumPodIPPool
  metadata:
    name: mars
  spec:
    ipv4:
      cidrs:
      - <IP_ADDRESS>/16
      maskSize: 24
- apiVersion: cilium.io/v2alpha1
  kind: CiliumPodIPPool
  metadata:
    name: other
  spec:
    ipv6:
      cidrs:
      - fd00:100::/80
      maskSize: 96
kind: List
metadata:
  resourceVersion: ""

Proper CI and documentation will be added in a follow-up PR.

/test

I believe I addressed all nits. Rebased and restarting CI

/test

test-1.26-net-next had a VM provisioning error (failed to fetch docker image) https://jenkins.cilium.io/job/Cilium-PR-K8s-1.26-kernel-net-next/708/console
ci-ginkgo failed with invalid value: 31414: provided port is already allocated (e.g. https://github.com/cilium/cilium/issues/13071) (https://github.com/cilium/cilium/actions/runs/5245376421/jobs/9472783968)
ci-ginko also failed with with a provisioning error (https://github.com/cilium/cilium/actions/runs/5245376421/jobs/9472786521)
ci-ginko also failed with https://github.com/cilium/cilium/issues/25964 (https://github.com/cilium/cilium/actions/runs/5245376421/jobs/9472788454)
ci-aks failed with an connectivity infra flake between cilium-cli and kube-apiserver error dialing backend: write unix @->/tunnel-uds/proxysocket: write: broken pipe, this is the same root cause as #26032, #26034, #26014

Restarting all failed tests

/test-1.26-net-next

CI-net-next hit #25958

/test-1.26-net-next


Parsers Readline Exemptions

Hi! Is there any functionality on parser readline which will return data when a special character is received?
I have an application which uses readline('\r\n') as a delimeter. If the serial receive a special character >, it should return the data.
Below is how the serialport is instantiated.
var serialport = require("serialport");
var SerialPort = serialport.SerialPort;

var serial = new SerialPort('/dev/ttyO4', {
	baudrate: 9600,
  parser: serialport.parsers.readline('\r\n'),
  flowControl: true
});

You can check if this works for you. By setting the Parser you can add an additional second Parameter, called encoding, test if "ascii" or something else do the magic. Basicly the encoding is used in the method toString as parameter on the Buffer.
General: https://nodejs.org/api/buffer.html#buffer_buf_tostring_encoding_start_end
readLine parser: https://github.com/voodootikigod/node-serialport/blob/master/parsers.js#L11

You can store the data in an Variable and output it when the Char ">" is in the string.
var buff = '';
serial.on('data', function (msg) {
	buff += msg;
	if (buff.indexOf('>') !== -1) { //check if an ">" is in the buff Variable
		console.log(buff); //output the Buffer
		buff = ''; //clean the Buffer
	}
});

I got a same problem.
but i think leadline in serial port module not support instead of the \r\n.


#2482 - Update PT Declarations Wording

Update (COPY PASTE ) PT student declaration to reflect the wording provided in the Word document above
Update (Copy Paste) PT partner declaration to reflect the wording provided in the Word document above

PT Student Declarations Wording Screenshot

PT Partner Declarations Wording Screenshot

Great job @lewischen-aot . Please have a look at the comments.


[Enhancement]: Better Hamburger-menu

Do you want to have the enhancement of existing game ? 😀 Describe yourself..
The Hamburger Menu in the howtoplay page looks very bland.

Describe the solution you'd like
I will make a better menu for smaller screens.
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

@ayush-t02  please have a look.

There are many other pages with similar problems. I will resolve them all.

Something like this:
https://github.com/user-attachments/assets/032e6476-8c4d-4bae-9184-65273a829e85

make all the hamburger for all pages uniform

On it!!

@ayush-t02 please kindly have a look at the attached pr.


error during "rebundling ruby applications"

After what seemed to be a smooth run, the script gave an error when rebundling ruby. I am not sure if this hosting account is actually using ruby. It might just be leftovers. Besides this issue the system was now showing errors. It was responsive and i could login without issues. I was unsure about the state of the system so i rolled everything back to the "before" snapshot.
Please let me know:

Did leap/script end after encountering this error, or did it continue and finish all other phases/steps?
How can i avoid this?

(...)
2023-08-16 22:53:11,470 - INFO - Success: updating plesk!
2023-08-16 22:53:11,470 - INFO - Skipped: reinstall modern postgresql!
2023-08-16 22:53:11,470 - INFO - Skipped: fix named configuration!
2023-08-16 22:53:11,470 - INFO - Do: rebundling ruby applications!
2023-08-16 22:53:12,624 - INFO - Running: ['/usr/sbin/plesk', 'sbin', 'rubymng', 'run-bundler', 'customerdom', '/var/www/vhosts/customerdomain.com/WP-2020/wp-content/plugins/loco-translate/src']. Output:
2023-08-16 22:53:13,328 - INFO - rbenv: bundle: command not found
2023-08-16 22:53:13,366 - INFO - The `bundle' command exists in these Ruby versions:
2023-08-16 22:53:13,367 - INFO - 2.4.6
2023-08-16 22:53:13,368 - INFO - 2.5.5
2023-08-16 22:53:13,368 - INFO - 2.6.10
2023-08-16 22:53:13,368 - INFO - 2.6.3
2023-08-16 22:53:13,368 - INFO - 2.6.9
2023-08-16 22:53:13,368 - INFO - 2.7.7
2023-08-16 22:53:13,368 - INFO - 3.0.5
2023-08-16 22:53:13,368 - INFO - 3.1.3
2023-08-16 22:53:13,368 - INFO - 3.2.1
2023-08-16 22:53:13,369 - INFO - ERROR:__main__:Command '['/usr/local/psa/admin/sbin/filemng', 'customerdom', 'exec', '/var/www/vhosts/customerdomain.com/WP-2020/wp-content/plugins/loco-translate/src', '/bin/bash', '-l', '-c', 'bundle install --path vendor/bundle']' returned non-zero exit status 127.
2023-08-16 22:53:13,384 - INFO - exit status 1
2023-08-16 22:53:13,384 - ERROR - Command '['/usr/sbin/plesk', 'sbin', 'rubymng', 'run-bundler', 'customerdom', '/var/www/vhosts/customerdomain.com/WP-2020/wp-content/plugins/loco-translate/src']' failed with return code 1
2023-08-16 22:53:13,384 - ERROR - Failed: rebundling ruby applications!. The reason: Command '['/usr/sbin/plesk', 'sbin', 'rubymng', 'run-bundler', 'customerdom', '/var/www/vhosts/customerdomain.com/WP-2020/wp-content/plugins/loco-translate/src']' returned non-zero exit status 1.
2023-08-16 22:53:13,915 - WARNING - Conversion status flag file does not exist. Skip sending conversion status
2023-08-16 22:53:13,915 - ERROR - centos2alma process has been failed. Error: Failed: rebundling ruby applications!. The reason: Command '['/usr/sbin/plesk', 'sbin', 'rubymng', 'run-bundler', 'customerdom', '/var/www/vhosts/customerdomain.com/WP-2020/wp-content/plugins/loco-translate/src']' returned non-zero exit status 1.

[root@hostname ~] # ls -la /var/www/vhosts/customerdomain.com/.rbenv/
shims/    versions/

[root@hostname ~] # ls -la /var/www/vhosts/customerdomain.com/.rbenv/shims/
total 60
drwxr-xr-x 2 customerdom psacln 193 Aug 16 22:53 .
drwxr-xr-x 4 customerdom psacln  35 Sep 11  2017 ..
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 bundle
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 bundler
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 erb
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 gem
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 irb
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 racc
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 racc2y
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 rake
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 rbs
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 rdbg
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 rdoc
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 ri
-rwxr-xr-x 1 customerdom psacln 420 Oct  6  2017 ruby
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 typeprof
-rwxr-xr-x 1 customerdom psacln 420 Aug 16 22:53 y2racc

[root@hostname ~] # ls -la /var/www/vhosts/customerdomain.com/.rbenv/
total 4
drwxr-xr-x  4 customerdom psacln    35 Sep 11  2017 .
drwx--x--- 30 customerdom psaserv 4096 Aug 16 22:53 ..
drwxr-xr-x  2 customerdom psacln   193 Aug 16 22:53 shims
drwxr-xr-x  2 customerdom psacln   124 Aug 16 22:53 versions

[root@hostname ~] # ls -la /var/www/vhosts/customerdomain.com/.rbenv/versions/
total 0
drwxr-xr-x 2 customerdom psacln 124 Aug 16 22:53 .
drwxr-xr-x 4 customerdom psacln  35 Sep 11  2017 ..
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 2.4.6 -> /var/lib/rbenv/versions/2.4.6
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 2.5.5 -> /var/lib/rbenv/versions/2.5.5
lrwxrwxrwx 1 customerdom psacln  30 Aug 16 22:53 2.6.10 -> /var/lib/rbenv/versions/2.6.10
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 2.6.3 -> /var/lib/rbenv/versions/2.6.3
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 2.6.9 -> /var/lib/rbenv/versions/2.6.9
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 2.7.7 -> /var/lib/rbenv/versions/2.7.7
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 3.0.5 -> /var/lib/rbenv/versions/3.0.5
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 3.1.3 -> /var/lib/rbenv/versions/3.1.3
lrwxrwxrwx 1 customerdom psacln  29 Aug 16 22:53 3.2.1 -> /var/lib/rbenv/versions/3.2.1

[root@hostname ~] # /var/www/vhosts/customerdomain.com/.rbenv/shims/ruby -v
ruby 2.5.9p229 (2021-04-05 revision 67939) [x86_64-linux]

[root@hostname ~] # which ruby
/bin/ruby

[root@hostname ~] # ruby -v
ruby 2.5.9p229 (2021-04-05 revision 67939) [x86_64-linux]

I hope this helps to pinpoint the issue.

Hello abien, My assumption is that custom Ruby versions have been installed on the instance and used by the customerdomain.com. And there is no associated 'bundle' utility for this specific version.

I check all version, all of them have bundle installed. I also had another upgrade (different system, different customer) result in the same error - additionally , in both cases its the same path (a WP Plugin) (...)/plugins/loco-translate/src
I took a close look and my guess is: Its a false positive of sorts. This code seems to iterate over the list of domains/paths and look for (sub)directories called "bundle". It then moves on with the rebundle function. It seems this is not a sufficient way to check "is this in fact a ruby app".
The WP plugin carries a bundle subdirectory : /var/www/vhosts/customerdomain.com/httpdocs/wp-content/plugins/loco-translate/src/admin/bundle - It contains only PHP files.
85% chance this is a bug. 15% chance i am misreading the code.

I've discovered a method to determine the root of a Ruby application based on the Apache configuration for the domain. It should work right and more effectively since we don't have to pass througth a whole home directory of domain. However, this approach can only be used when the Ruby application is enabled.
For disabled applications, I plan to continue using the old method, but I will also perform additional checks to ensure that the bundle folder is related to Ruby by examining its contents. I believe this approach should significantly reduce the likelihood of encountering the issue.
Relater PR is #138


Add support for Django 3.1+ and drop Django 1.11, 2.0

Fixes #376

Django 3.1 introduces a deprecation warning for the NullBooleanField, and recommends switching to a BooleanField with null=True set. This field only supports null arguments from 2.1 on (https://docs.djangoproject.com/en/2.1/ref/models/fields/#booleanfield), which means it is not possible to support <2.1 and >3.1 together.
This PR drops 1.11, 2.0, 2.1 support. The package classifiers have been updated to reflect this.

@clintonb do you think you could make a new release with this PR? Cheers!


Public repo

Hi Jurica,
Is there any public maven repo where I can find the plugin? Or any other way to get binaries?

Hi Slava,
unfortunately there is no plugin in the public repo. I coludn't find time to put it in the public repo, since the plugin must match some criteria. When I used the plugin, I built the plugin from source and install it in a local repo, such as Artifactory. That's the way I used.


[Region Migration] Add md5 check for IoTConsensus snapshot transmission & (for ratis) Prefer not choose new peer as new leader

How about testing the performance of turning on md5 validation, or turning it on by default if it doesn't affect much


Ability to choose the RediSearch Dialect

For instance Dialect 2 does not permit to retrieve multi-value data stored in json
Dialect 3 and 4 do permit.

working on this. dialect will be 2 by default, but configurable on the query class :)

Addressed in https://github.com/RedisVentures/redisvl/pull/95


Issues about Data Preparation

Thanks for your great work and sharing the code!
I'm trying to reproduce your results on Cityscapes to FoggyCityscapes. However, I find the data preparation description is not very clear on this dataset:

If I do not modify Detectron2 code, it will by default read images with .jpg suffix. However, the images from Cityscapes are in .png format.
In Detectron2's evaluation code (https://github.com/facebookresearch/detectron2/blob/v0.5/detectron2/evaluation/pascal_voc_evaluation.py#L132), it reads pose truncate difficult properties which are not actually produced by your annotation transformation script.
Besides, the data folder structure is not very clear from the description and code. It would really take some time to understand how to unzip the Cityscapes files and move things around so that they can match your scripts.

Would you mind giving more complete instructions on data preparation?

I would like to clarify your questions on data preparation details.

Detectron2 reads images with .jpg by default, and you are supposed to transform images in Cityscapes to .png  format or change jpeg_file = os.path.join(dirname, "JPEGImages", fileid + ".jpg") to jpeg_file = os.path.join(dirname, "JPEGImages", fileid + ".png") in this line.
PASCAL VOC xml contains pose truncate difficult properties by default, and you are supposed to comment them out this in Detectron2 or add dummy properties when annotation transformation.
We just follow the default data folder structure of PASCAL VOC, and you can adapt our scripts (especiallly Cityscapes path) to fit your envienments. We will update more straightforward scripts for a better understanding.

Thanks for your helpful response!


Initializing nested component props on server side

I'm using next.js with redux, I have a component (table) that I'm populating via an API call that I'd like to be done on the server-side. I've looked at the with-redux example, which relies on the fact that the page by itself can populate the store in getInitialProps. However, I'd like to abstract that away from the page that contains the table, as I don't think the page should have such responsibility. I'd also like to avoid cascading getInitialProps() calls. Is there a way to accomplish this with nextjs, or does it go against convention? It seems like redux-connect can solve my problem, but I'm unsure of how to integrate it into the project.

If you want to store the table in the redux store by fetching it from the server then you can have this in the table component
import { Component } from 'react'
import { connect } from 'react-redux'
import 'isomorphic-fetch'
import { updateTable } from '../actions' //dispatch function to update table in redux store

class Table extends Component {

  componentDidMount() {
    fetch("/api/table")
      .then(response => {return response.json()})
      .then(data => {
        this.props.dispatch(updateTable(data))
      })
      .catch(err => console.log(err))
  }

  render() {
    if (!this.props.table) return //return a loading message while the table content gets fetched from the server
    return (
      //your table which can access the contents with {this.props.table}
    )
  }
}

function mapStateToProps(state) {
    return {
      table: state.table
    }
}

export default connect(mapStateToProps)(Table)

You can populate the table the same way without the redux store by storing it in the component state

I don't think this is exactly what I want, sorry if I didn't make my use case clear. My table relies on calling an external API to populate its rows. When this table is rendered server-side, I'd like to make the call then, so that it's already populated in the browser.
From what I understand, componentDidMount is only called on the browser, which is the opposite of what I'm trying to accomplish.

What you can do is fetch the data and set it the react-context. Anyway, you need to fetch data from the getInitialProps. And then use a higher order component to move the data coming from props to context.
Recompose will be your friend.

Ok, so instead of something like this:
class Table extends Component {
  render() {
    ...
  }
}

function mapStateToProps(state) {
    return {
      table: fetch('/api/tableData')
    }
}
export default connect(mapStateToProps)(Table)

I'll need to do this instead?
table.js
class Table extends Component {
  render() {
    ...
  }
}

function mapStateToProps(state) {
    return {
      table: state.table
    }
}
export default connect(mapStateToProps)(Table)

tablePage.js
class TablePage extends Component {
  static async getInitialProps() {
    table: fetch('/api/tableData').then(res => store.dispatch({type: 'TABLE_LOADED', payload: res})
  }

  render() {
    ...
  }
}

export default TablePage

I'm worried that with this pattern there isn't a clear separation of concerns between the table and tablePage. Please let me know if I'm misunderstanding. Also, I'm unfamiliar with Recompose, will it help solve some of this?

Ok after revisiting this, I figured that it is a good idea to keep my components unaware of redux, and only open it to my pages via an HOC.
Now it's something like this:
page.js:
 export default (Component) => {
   return class extends React.Component {

     constructor (props) {
       super(props)
       this.store = initStore(props.initialState)
     }

     static async getInitialProps() {
       this.store = initStore()
       if (typeof Component.getInitialProps === 'function') Component.getInitialProps(this.store)
       return {initialState: this.store.getState()}
     }

     render () {
       return (
         <Provider store={this.store}>
             <Component {...this.props}/>
         </Provider>
       )
     }
   }
 }

table.js
const mapStateToProps = state => state.tableData
const mapDispatchToProps = dispatch => ({
  toggleRow: (count) => dispatch({type: 'UPDATE_COUNT', payload: count})
})
@connect(mapStateToProps, mapDispatchToProps)
class TablePage extends React.Component {
  static async getInitialProps(store) {
    fetch('/api/tableData').then(res => store.dispatch({type: 'TABLE_LOADED', payload: res})
  }

  render () {
    return (
      <Card>
        <DealsTable {...this.props}/>
      </Card>
    )
  }
}
export default Page(DealsPage)

This seems like it works (haven't actually tested the


Added additional error information

Added additional error information to debug a random mismatch error which can't be reproduced locally.

Codecov Report

Merging #621 into dev will increase coverage by 0.04%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev     #621      +/-   ##
============================================
+ Coverage     46.58%   46.62%   +0.04%
+ Complexity     2229     2228       -1
============================================
  Files           109      109
  Lines         25409    25409
  Branches       4184     4184
============================================
+ Hits          11836    11848      +12
+ Misses        11539    11528      -11
+ Partials       2034     2033       -1

Flag
Coverage Δ
Complexity Δ

#JDBC42
46.47% <ø> (-0.03%)
2226 <ø> (-3)

#JDBC43
46.5% <ø> (+0.06%)
2222 <ø> (+4)
:arrow_up:

Impacted Files
Coverage Δ
Complexity Δ

...om/microsoft/sqlserver/jdbc/ReaderInputStream.java
44.94% <0%> (-2.25%)
16% <0%> (-1%)

...ncurrentlinkedhashmap/ConcurrentLinkedHashMap.java
39.4% <0%> (-0.22%)
44% <0%> (-1%)

...m/microsoft/sqlserver/jdbc/SQLServerStatement.java
59.73% <0%> (+0.1%)
134% <0%> (+1%)
:arrow_up:

...om/microsoft/sqlserver/jdbc/SQLServerBulkCopy.java
52.67% <0%> (+0.12%)
239% <0%> (ø)
:arrow_down:

...in/java/com/microsoft/sqlserver/jdbc/IOBuffer.java
54.33% <0%> (+0.39%)
0% <0%> (ø)
:arrow_down:

Continue to review full report at Codecov.

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

Closing the PR as the changes are not coming from the right branch and are mixed.


Difficulty finding lists of "area types" and "standardized regions".

I really had to scour the website to find these lists of controlled vocabulary.  For area_type, there seems to be no reference to the lists in the conventions themselves.  We could add links to these lists from some of the following pages:

https://cfconventions.org/index.html under "quick links"
the CF conventions document (notably, the area_type list should probably be linked to from section 7.3.3; there is already a link to standardized region in the conventions document)
the standard names search page

As did I, eventually finding them under the "Standard Names" tab. I agree with your suggestions, Karl, and might add add that we could add the latest area types and regions under the to the "Conventions" tab.

Yes, and I think the more generic name "vocabularies" is the correct label, but some users might then have more trouble finding the standard names, which they might have heard of and not realize that they are an instance of a vocabulary.    Anyone else have an opinion?   Perhaps I underestimate the users.

Dear Karl @taylor13
You've just mentioned this issue again, I see. We could make the changes suggested above (last year). I would propose:

Rename the Standard Name page (which appears in the menu bar at the top) as Vocabularies, which is really what that page covers i.e. all controlled vocabulary, not just standard names.
Change the line which links the current version of the standard name table under Quick links on the home page to read "Current versions of CF vocabularies: standard name table, area type table, standardized region list", with each of these three being a link to the latest version.
Put a link on the Conventions page to the Vocbularies/Standard Name page, saying that it includes area types and regions.

You thought it might not be clear that "Vocabularies" means standard_names, regions and area_types. If someone comes to the home page looking for these things, however, they will still find them in the Quick links. The value of the menu bar is more as shortcuts from other pages, I would say.
Cheers
Jonathan

I think @JonathanGregory has nicely addressed the problem by suggesting specific changes, which I support.  Thanks!

I also support these changes. I often use the "standard name table" link on the same line as the "Latest release" and "Working draft" links, which perhaps retains the standard name visibility to those who don't think in terms of vocabularies.

I suggest putting the area types and regions in the same line as the one David refers to:

Latest release (1.10) HTML PDF  •  Working draft HTML PDF  •  Standard name table

and removing the first two Quick links

• Latest release of CF conventions
• Current version of CF standard name table

because we have the "even quicker" links above, as well as the menus on the navigation bar. Would that be all right?

That's good for me, @JonathanGregory

Yes; would be an improvement.  Thanks.

I have created PR #253 to implement this change, which produces a modified home page and renames the Standard Name page as Vocabulary. This should appear in the navigation bar automatically.

I have changed Vocabulary to Vocabularies in the PR, as suggested by @davidhassell (in his comment on the PR).

If there are no further comments, and presuming Karl @taylor13 and @davidhassell support the change as currently formulated, this change can be made in another 19 days on 28th September.

I support these changes as implemented in the PR.

Thanks for checking, Alison @japamment

I do indeed support the change as implemented. Thanks, Jonathan

me too..  thanks, Karl.

No further comments have been made so this change can be made today. Please could someone merge PR 253 and close this issue? Thanks.

I did it myself in order to cross it off my to-do list! :heavy_check_mark:  I reckoned this was OK since others had reviewed the PR.

Thanks, Jonathan.


Import css (none sass) file

I found that import css file into sass file is not allowed yet by default.  So I'm not sure where to import custom css files from 3rd party libraries (which has no sass files) to prevent import them to index.html. I found out solution to create new css file and import these libraries there. Somebody using better solution?

you can actually import a css file into a SASS file. I do that on my project using this starter.
I use the third party PrimeNG which come with a css file only (no sass, no less) and I import it by adding
@import 'primeng/resources/primeng'; in src / app / styles.scss file.
PrimeNG is in node_modules and the css file is node_modules/primeng/ressources/primeng.css


PKCE authorization

Feature request
PKCE authorization and code exchange.
Is your feature request related to a problem? Please describe.
Not necessarily, but the code we're migrating utilized the PKCE feature in Supabase. PKCE offers some security bonuses over implicit, which is the current authorization method.
Describe the solution you'd like
In authorize.Authorize we can add a check for PKCE flowtype which adds 2 items into the query:

code_challenge
code_challenge_method

You can write a function to generate the required PKCE parameters. https://github.com/nedpals/supabase-go has a great implementation of this.
After a redirect has been executed, then the a callback function with Token must be executed where a parsed URL parameter is shoved into TokenRequest{ GrantType: "pkce", Code: "code", CodeVerifier: "verifier }.
Add a case for PKCE in token.Token to check for empty code or empty verifier. After that, the code should be serializable into a request so no other changes would need to be made.
Describe alternatives you've considered
The existing form of authorize does work, but forgoes the potential security from PKCE
Additional context
Here's my fork: https://github.com/Qinbeans/gotrue-go
If you're pleased with it, I'd be happy to pull request.

Thanks for opening the issue. The code in your fork looks good to me. I'll find some time to test your changes locally too. In the mean time, can you open a pull request? And we can look at getting it merged soon after

Merged now, I'll create a release tag. Thanks for your contribution!


fix: restore email templates, exclude vendor views from Prettier

Partially reverts commit d31e9fbb14068a3ee28d0850104ffb08661d970f.
Fixes a formatting regression in mail templates introduced in #960.
Prerequisites
If this PR changes PHP code or dependencies:

[x] I've run composer format and fixed any code formatting issues.
[x] I've run composer analyze and addressed any static analysis issues.
[x] I've run php artisan test and ensured that all tests pass.

Not sure if this is included in this PR, but the team invitation emails still look broken (shows code instead of layout)

It wasn't— fixing in my current branch.


Local issue running Hospital Readmission notebook

I have been working on replicating the hospital readmission notebook locally and I am getting output that differs substantially from the expected output. Below, I show side-by-side my output vs the expected output. I think the major issue is that the number of parameters that my model outputs is 122 when it's supposed to be 127. I can't localize where this change is occurring because the dimensions of my input data are as expected: 127 columns. Any guidance you can provide on why this might be occurring would be greatly appreciated!

Hi Brianna,
Hmm, I'm not sure why the output dimensions are changing. If you run the hospital notebook in this repo without any changes (https://github.com/kohpangwei/influence-release/blob/master/scripts/hospital_readmission.ipynb), do you get the expected number of parameters? If you don't, then it could perhaps be due to version changes (since this code is quite old)?
Is your input_dim 127?

Hello! Yeah, I did have issues running this repo as is. The docker installation was too outdated for my system, it seems. I got the correct input_dim, but the model still ended up with a different number of parameters (122). Even when I change the dataset (to the adult dataset), I am still getting the same issue where the original dimensions (97) are somehow converted to 122 in the model. I wasn't able to figure out the cause of this, but I assume it was a version issue. Thanks for your time and assistance, anyhow!

Ok. Thank you for raising this issue!


GetView   "AwesomeController" is not found.

just 'GetView' example code
but i got a error, "AwesomeController" is not found. why?
example:
// GetView
// I love this Widget, is so simple, yet, so useful!

// Is a const Stateless Widget that has a getter controller for a registered Controller, that's all.

 class AwesomeController extends GetController {
   final String title = 'My Awesome View';
 }

  // ALWAYS remember to pass the `Type` you used to register your controller!
 class AwesomeView extends GetView<AwesomeController> {
   @override
   Widget build(BuildContext context) {
     return Container(
       padding: EdgeInsets.all(20),
       child: Text(controller.title), // just call `controller.something`
     );
   }
 }

Please controller to memory using Get.put( Controller )

Correct way working seems to be adding:
@override    final AwesomeController controller = Get.put(AwesomeController());
like this:
`class AwesomeController extends GetController {
final String title = 'My Awesome View';
}
class AwesomeView extends GetView {
@override
final AwesomeController controller = Get.put(AwesomeController());
@override
Widget build(BuildContext context) {
return Container(
padding: EdgeInsets.all(20),
child: Text(controller.title), // just call controller.something
);
}
}`

I tried adding:
final AwesomeController controller = Get.put(AwesomeController());
so:
class AwesomeView extends GetView<AwesomeController> {

   final AwesomeController controller = Get.put(AwesomeController());

   @override
   Widget build(BuildContext context) {
     return Container(
       padding: EdgeInsets.all(20),
       child: Text(controller.title), // just call `controller.something`
     );
   }
 }

but doesn't work anyway

Just register controller in page binding.

Just register controller in page binding.

i think this is a bug, i don't know which version does the documentation used. but in this line it's very clear that GetView will automatically register the controller.
// ALWAYS remember to pass the `Type` you used to register your controller!
class AwesomeView extends GetView<AwesomeController> {
  @override

Just register controller in page binding.

i think this is a bug, i don't know which version does the documentation used. but in this line it's very clear that GetView will automatically register the controller.
// ALWAYS remember to pass the `Type` you used to register your controller!
class AwesomeView extends GetView<AwesomeController> {
  @override

GetView does not register a controller. It just gives easy access to a controller that has already been registered.
A Get.put is needed for GetView to be able to find the controller.
It's only useful with Bindings, or when you're accessing a second page where the controller was registered on the first page.


Python 3.7 SyntaxError

Using the version on PyPI
> subzone
Traceback (most recent call last):
  File "/usr/bin/subzone", line 11, in <module>
    load_entry_point('subzone==0.2.8', 'console_scripts', 'subzone')()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 489, in load_entry_point
    return get_distribution(dist).load_entry_point(group, name)
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2852, in load_entry_point
    return ep.load()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2443, in load
    return self.resolve()
  File "/usr/lib/python3.7/site-packages/pkg_resources/__init__.py", line 2449, in resolve
    module = __import__(self.module_name, fromlist=['__name__'], level=0)
  File "/usr/lib/python3.7/site-packages/subzone/__init__.py", line 6
    from .__version__ import __copyright__,
                            ^
SyntaxError: trailing comma not allowed without surrounding parentheses

Hmm, yea I did this code in Python 3.6.5. Will look into this when I get some free time. Thanks. :)


Store web_data without newlines

Description
This is a follow-up to #367, which enabled the API to store and update web_data. The format is a flattened hash, which is stored as a string in the database. That PR converted the hashes into strings with embedded newlines, which looks pretty, but was not intended, because historically this is not how the data has been stored. I'm not aware of newlines being problematic, but it's conceivable that, say, a regex somewhere might not work on a multiline string. This PR removes newlines from the stored web_data.
Use case
Various Production and non-vert pipelines use this API functionality to propagate web_data from the production DB to core DBs.
Benefits
Makes code fully consistent with previous functionality; avoids potential parsing problems.
Possible Drawbacks
None I'm aware of.
Testing
Have you added/modified unit tests to test the changes?
Yes, analysis.t
If so, do the tests pass/fail?
Pass
Have you run the entire test suite and no regression was detected?
Yes

Coverage increased (+0.003%) to 81.464% when pulling e4c964dc30de67519e96257d8b5d7a9853e7730d on james-monkeyshines:bugfix/analysis_webdata into 669943356ab0b7060b1aed581c075db8a25db14e on Ensembl:master.


Add isTable option

Required this option so added it. I will need more for the script I'm writing and I think the most ideal way to do so is to have all kwargs be passed as options to the payload.
Is this repository still actively maintained?

I've committed the generic implementation as well, if you'd rather it.

Yeah, this repo is still maintained! There are just not many changes that are still needed. This is a great addition, thanks for your contribution!

Great, thanks for the quick merge!


How to scale this?

Maybe sharding Mongo? HAProxy? I'm kinda new to this and just try to make sure that I can scale it later.
So any idea or guides is welcome.
Thanks

Deploy sharded mongo cluster:
https://docs.mongodb.org/manual/tutorial/deploy-shard-cluster/
Then, run parse-server with sharded mongo cluster:
$ docker run -d \
             -e DATABASE_URI=mongodb://shard.mongodb.intra:27017/ \
             -e APP_ID=${PARSE_APP_ID}                            \
             -e MASTER_KEY=${PARSE_MASTER_KEY}                    \
             -p 1337:1337                                        \
             -p 2022:22                                          \
             --name parse-server                                 \
             yongjhih/parse-server

Cool thanks, I'll try.

following on this, how to scale the parse-server, if i using docker-compose scale parse-server=4, i get error since cannot bind on the same host port.


[BUG] -  'Precompensation' object has no attribute 'has_changed'

Describe the bug
When using Precompensation in a signal calibration the following error is raised by the initialization:
        if self._mixer_calibration is not None:
            self._mixer_calibration.has_changed().connect(
                self._mixer_calibration_changed_callback
            )
        if self._precompensation is not None:
>           self._precompensation.has_changed().connect(
                self._precompensation_changed_callback
            )
E           AttributeError: 'Precompensation' object has no attribute 'has_changed'

..\..\miniconda3\envs\wmiqconly\lib\site-packages\laboneq\dsl\calibration\signal_calibration.py:92: AttributeError

To Reproduce
Generate calibration object with precompensation
Versions used:

laboneq: 2.8.0

Context

[ ] Do you know a workaround for the issue? If yes, please provide a short description.
[x] Does the issue block your experiments?

We imported laboneq.data.precompensation.Precompensation instead of laboneq.dsl.calibration.precompensation.Precompensation with the correct import the module works as expected.
For a better user experience while importing, I suggest not using the same class names and similar import paths throughout the package.

Hi Niklas, sorry to hear that you were negatively affected by this, and glad you solved it.
Some context: we are currently in the process of refactoring the internal interfaces between the components, and down the line the types you mention will be fused. Currently, laboneq.data, as well as laboneq.interface and laboneq.implementation, are work-in-progress.
We did indeed not anticipate users accidentally (via some tooling auto-import magic I presume 😉) importing the wrong type. We may consider removing them from the PyPI builds.


build(deps): bump braces from 3.0.2 to 3.0.3 noyna

Bumps braces from 3.0.2 to 3.0.3.

Changelog
Commits

updated-dependencies:

dependency-name: braces dependency-type: indirect ...

@dependabot recreate


Question about the dependencies of coq-nvim

The coq-nvim plugin has been packaged upstream.
However, there, it does not have the python dependencies as the version packaged in nixvim.
Do we need those python dependencies ? More precisely, which one of the following options is the best ?

Those plugins are not mandatory dependencies, it is why they are not part of the upstream vimPlugins.coq_nvim package.
We can then remove coq_nvim from the packages that we manually package and rely on the upstream package.
Those dependencies are necessary and it would make sense to upstream them.
In between: it does not really make sense to upstream them, but it is useful to get them for nixvim users.

If option 3, why precisely ?
cc @pta2002 as you packaged this plugin first.

I made a PR upstream: https://github.com/NixOS/nixpkgs/pull/223056

Sorry I could swear I'd replied to this. Thanks for making the PR upstream, it was indeed necessary as otherwise coq would try to download the dependencies by itself and it'd fail as it tried to write to the nix store.

The upstream PR has finally been merged !
https://github.com/NixOS/nixpkgs/pull/223056
Once the updates makes it to nixos-unstable, coq_nvim user should have a good experience.
Hence, I am closing this issue.


Add additional print columns to Repository CRD

Issue #, if available:
Description of changes:

Add additional print columns to Repository CRD

By submitting this pull request, I confirm that my contribution is
made under the terms of the Apache 2.0 license.

/lgtm


Regression: Enter doesn't work on autosave screen

Pressing main enter or numpad enter saves the game here, but doesn't continue to the next screen.  See the stdout log in this screenshot.

That's strange, it works for me and I tested this really well.

This appeared at 2000 BC and what you see in the screenshot is what I saw.  Pressing enter made that line appear in stdout, but nothing else.  Pressing escape exited this screen back to the game.

For the record, I was using 9aa6d07070eacfd79f3139601cd13ee17abcb808 in this screenshot.

I will tell you if it happens again, also, and try to give more detail in that case.

It could have something to do with "End of Turn" being enabled.  I always enable it, and I noticed that it is disabled by default.

Yeah, it happened again at 1000 BC, and I definitely have "End of Turn" enabled.  I can't think of any other details to mention.

Can you set breakpoints in /src/Screens/SaveGame.cs at lines 97, 120, 169, 191 and and see if any of them are ever hit. If so, please make a screenshot of VScode.

I'm running without debugging, as running with debugging doesn't work here.

Ah... okay.
Does saving via the game menu work for you?

If the stdout lines are correct, yes, but no, pressing enter while the file I want to overwrite is highlighted doesn't do anything.

I have tried running the game on Windows 7 still can't reproduce this issue.

It worked previously, so it must be something that was changed.

There's a change: I have added a confirmation dialog.
I'm going to keep trying to find out what could cause this...

I can finally reproduce this...

Is this possibly related to the invalid save games?

There's been some more fixes to the Save games, including data validation on existing save games.
The one situation where I could reproduce this had to do with corrupt save games. This appears to have been solved.
Can you test to see if it works now? If not, can you try saving to another 'drive letter'?

I can't test this adequately until https://github.com/SWY1985/CivOne/issues/384 is resolved.

This seems to be fixed.

Great news, thank you for testing! 👍


Salesforce content enrichment

Required items, please complete
Change(s):

Analytical rule, workbook and parser added for Salesforce service cloud

Reason for Change(s):

Salesforce service cloud enrichment

Version Updated:

yes

Testing Completed:
-yes
Checked that the validations are passing and have addressed any issues that are present:
-yes

@aprakash13 Please have a look on analytic rules. Thanks

Hi @shainw , @rushriva has fixed the changes which you have been suggested please have a look. Thanks

Hi @rushriva, @devikamehra has  suggested some changes in parser can you please look into this. Thanks

@v-atulyadav @devikamehra - Comments addressed. Please check.

Hi @rushriva , can you please addressed the comments shared by @shainw. Thanks.

Hi @shainw , @rushriva has addressed the comments please check for the same. Thanks.

Hi @shainw , @rushriva has addressed the comments please check for the same. Thanks.

Hi @shainw , @rushriva has addressed the comments please check for the same. Thanks.

Hi @shainw , @rushriva has addressed the comments please check for the same. Thanks.

Hi @shainw , @rushriva has changed the analytical rules as you requested, please check for the same. Thank you.

Hi @shainw , In response to your request, @rushriva has modified the analytical rules. Please check them. Thanks a lot.

Hi @shainw, @rushriva modified the analytical rules in response to your request. Please check them. Thanks.

Hi @shainw, in response to your request, @rushriva modified the analytical rules. Please check them. Thank you

Hi @shainw, in response to your request, @rushriva modified the analytical rules. Please check them. Thank you

Hi @shainw, The analytical rules have been modified by @rushriva in response to your request. Have a look at them. Thank you.

Hi @shainw, @rushriva modified the analytical rules in response to your request. Please check them. Thanks.

Hi @shainw, in response to your request, @rushriva modified the analytical rules. Please check them.

Hi @shainw, in response to your request, @rushriva modified the analytical rules. Please check them. Thank you

@devikamehra : Above comments addressed by @rushriva ,Please have a look provide your signoff. Thanks!

Hi @devikamehra changes addressed by @rushriva please have a look. Thanks!

Hi @rushriva , I am getting the following empty value while deploying the workbook. Please suggest.

Hi @rushriva , I am getting the following empty value while deploying the workbook. Please suggest.

@v-atulyadav  - This is because there is no username present for the particular user.

@rushriva : Please address the @v-atulyadav comments


These Advertisements

Recently i've been getting random ads abt pornography. Pls Stop this

I will check the advertising filtering once again, thank you for your report.


WebSocket disconnection message should be displayed as error

WebSocket disconnection message (https://github.com/Starcounter/Starcounter/issues/2332), which is used by Starcounter to send server side exceptions to the client, should be displayed as an error in the web browser console.

@warpech it already works like this, it is shown on the console, but not on the page.

@warpech I close this issue as it already works like you described.

Does it work with exception stack traces? My testing code was:
    void Handle(Input.Cancel action) {
        throw new Exception("Bad server!");
    }

As I pointed in this comment: https://github.com/Starcounter/Starcounter/issues/2332#issuecomment-111400971 this does not work at all.
@alemoi said that we have to explicitly set ws disconnection message, then it will be send to the client.

Throwing an exception does not disconnect the websocket. Disconnect should be called explicitly with a message.

I reopened https://github.com/Starcounter/Starcounter/issues/2332


error in keyspace cassandra latest version on latest version of platys

root@ubuntu20virgen:~/platys-demo-platform# docker exec -ti cassandra-1 cqlsh
Connected to Test Cluster at <IP_ADDRESS>:9042
[cqlsh 6.0.0 | Cassandra 4.0.5 | CQL spec 3.4.5 | Native protocol v5]
Use HELP for help.
cqlsh> DROP KEYSPACE IF EXISTS iot_v10;
cqlsh> CREATE KEYSPACE iot_v10
   ... WITH replication = {'class': 'SimpleStrategy', 'replication_factor': 3};
OperationTimedOut: errors={'Connection defunct by heartbeat': 'Client request timeout. See Session.execute[_async](timeout)'}, last_host=<IP_ADDRESS>:9042
Warning: schema version mismatch detected; check the schema versions of your nodes in system.local and system.peers.
cqlsh>

was network issue
tnks


Remove activations from Layer

Closes #132
Motivation: #132, https://github.com/spacemeshos/go-spacemesh/issues/2314
Activations for a given layer is not well-defined since activations are associated with blocks and epochs, not layers. Remove this to prevent confusion. They can be read from blocks for now. If we want, we could also add a block's active set to the API.

Why shouldn't the api support getting activations form layer which is just an aggregation of all activations in blocks of this layer? Very convenient. Without this clients have to enumerate all blocks in that layer and pull the activations from them...

As far as I remember, there was actually an ask in the api design review from research, to remove the notion of activations from a block as they are free-standing and not really belong to a block. In case they are still free-standing, the api must provide access them by layer as this is their context. @noamnelke . Activations must have context in the protocol - block, layer or epoch - so the api should support fetching them by that context....

Why shouldn't the api support getting activations form layer which is just an aggregation of all activations in blocks of this layer?

Because there is no meaningful, logical association in our data model between activations and layers. This is just a convenience, or shortcut. I think the API should accurately present the data model. I don't think it's too much extra work to expect clients to download blocks and read activations from those blocks.

the api must provide access them by layer as this is their context

The context of an activation is an epoch, not a layer. They are published in epoch N to guarantee eligibility in epoch N+1.

The context of an activation is an epoch, not a layer.

This was also my understanding (and maybe I convinced you?) until last Monday's research meeting, where Tal convinced me that, for security reasons, ATXs must be more specifically positioned in time (i.e. in a layer, not an epoch).
Does this need to be exposed in the API? I'm not sure, but there's also no strong reason not to expose this. If for product reasons it makes more sense to associate ATXs with epochs (I actually think it does, since it's harder for users to understand the security reasons they need to be associated with a layer) - then the presentation layer can aggregate ATXs from all layers in an epoch into one list.

From a product perspective it makes more sense to associate ATXs with layers because it gives smesher better resolution of when their ATX got on the mesh but it is not a huge deal. It is a kind of an assurance and confirmation when you see your submitted ATX in explorer and the data is less abstract because a layer time resolution is higher than an epoch.

But where do ATXs go in our (internal) data model? Right now, an epoch consists of a set of layers, each of which contains blocks, each of which contains transactions. ATXs are current free-standing, but point to a particular epoch. Where will the association between ATX and layer live?

but point to a particular epoch

They point to a layer, we just never implemented any validation that it was actually published in time. Each ATX has a PubLayerID (part of the NIPSTChallenge with is, in turn, part of the ActivationTxHeader).

Okay. If we're certain of this course of action, then we can close this PR. We can probably also close the linked issue in this case, since there's no change to the API design necessary (just change to the implementation).


Total segmentator not running after restart

I am new to segmentation software. I have read that all you have to do is restart the 3D slicer; however, nothing is working still. I am getting the same error message each time.

To investigate, we would need to get the full text of all error messages that you see in the textbox in the module and in the application log.

I am new to segmentation software. I have read that all you have to do is restart the 3D slicer; however, nothing is working still. I am getting the same error message each time.

If you can not install 'light_the_torch' you can download whl package, and use PythonSlicer.exe install xxx.whl

Please try the clean install of the latest Slicer-5.4 release (provides TotalSegmentator v1) or the latest Slicer-5.5 release (provides TotalSegmentator v2). Both should work without any restart.


WIP chore(resolver): Enable the aggregator queue

Description

WIP
User-facing documentation
(must be 2 items and both must be checked)

[ ] CHANGELOG update is not needed
[ ] Documentation is not needed

Testing

[ ] inspected CI results

Automated testing
(must be at least 1 item and all items must be checked)

[ ] contributed no automated tests

How I validated my change

change me!

/retest-times 10 gke-qa-e2e-tests

/test gke-qa-e2e-tests


[HHH-10474] limit SchemaUpdateFormatterTest to H2 only

it fails on some databases due different generated CREATE TABLE command, better to limit it to H2 only. It tests only that queries printed to stdout/file are formatted
https://hibernate.atlassian.net/browse/HHH-10474

Using @RequiresDialect won't work for SchemaUpdateFormatterTest because it does not extend BaseUnitTestCase.
I've used SkipLog instead. See https://github.com/hibernate/hibernate-orm/commit/1e470f9e4dc1dccc91ed7e1cbfd31251aaf451eb .


Wallet support stopped working

System Health details
System Information

version
core-2024.10.3

installation_type
Home Assistant OS

dev
false

hassio
true

docker
true

user
root

virtualenv
false

python_version
3.12.4

os_name
Linux

os_version
6.6.54-haos

arch
x86_64

timezone
Europe/Copenhagen

config_dir
/config

Home Assistant Community Store

GitHub API
ok

GitHub Content
ok

GitHub Web
ok

HACS Data
ok

GitHub API Calls Remaining
5000

Installed Version
2.0.1

Stage
running

Available Repositories
1455

Downloaded Repositories
48

Home Assistant Cloud

logged_in
true

subscription_expiration
22. oktober 2024 kl. 02.00

relayer_connected
true

relayer_region
eu-central-1

remote_enabled
true

remote_connected
true

alexa_enabled
false

google_enabled
true

remote_server
eu-central-1-9.ui.nabu.casa

certificate_status
ready

instance_id
e95d96e84b464996bf5134c031bd5890

can_reach_cert_server
ok

can_reach_cloud_auth
ok

can_reach_cloud
ok

Home Assistant Supervisor

host_os
Home Assistant OS 13.2

update_channel
beta

supervisor_version
supervisor-2024.10.2

agent_version
1.6.0

docker_version
27.2.0

disk_total
219.4 GB

disk_used
148.1 GB

healthy
true

supported
true

host_connectivity
true

supervisor_connectivity
true

ntp_synchronized
true

virtualization

board
generic-x86-64

supervisor_api
ok

version_api
ok

installed_addons
Samba share (12.3.2), File editor (5.8.0), Mosquitto broker (6.4.1), Advanced SSH & Web Terminal (19.0.0), Studio Code Server (5.17.2), Home Assistant Google Drive Backup (0.112.1), ESPHome (2024.10.0), RTSPtoWeb - WebRTC (1.4.0), Network UPS Tools (0.13.2), Zigbee2MQTT (1.40.2-1), Wmbusmeters (W-MBus to MQTT) (1.17.1), Music Assistant Server (beta) (2.3.0b33), Piper (1.5.2), Whisper (2.2.0), openWakeWord (1.10.0), Zigbee2MQTT Edge (edge), Docker Wyze Bridge (2.10.3), SQLite Web (4.2.2)

Dashboards

dashboards
2

resources
25

views
22

mode
storage

Recorder

oldest_recorder_run
11. oktober 2024 kl. 18.45

current_recorder_run
21. oktober 2024 kl. 10.43

estimated_db_size
2202.95 MiB

database_engine
sqlite

database_version
3.45.3

Checklist

[X] I have enabled debug logging for my installation.
[X] I have filled out the issue template to the best of my ability.
[X] This issue only contains 1 issue (if you have multiple issues, open one issue for each issue).
[X] This issue is not a duplicate issue of currently previous issues..

Describe the issue
It seems that Monta has changed someting in their API making the wallet support fail. The integration has now been changed so that the whole integrations doesn't crash anymore but still unable to retrieve the wallet information.
Originally the feature was added by @RogerSelwyn so maybe he would care to have a lokk at it
Reproduction steps
1.none
2.
3.
...
none
Debug logs
none

Diagnostics dump
none

@Bluhme1 You have to reach out to Monta support.
The issue is that API response returns an error and there is nothing i can do in my side.

I have tried to contact Monta but they are very slow in responding

I added the feature because it was requested by someone, I don’t use it myself. I could see that the api is returning an error, so I just disabled it in my code.

Have been in contact with Monta again. And the API is fixed.
So everything is working again - including the wallet function


Support for Orca 5

Currently the README states that Orca 5 is not supported. Is there any change from Orca 4 to 5 which is blocking or has the combination not been tested so far?
As far as I'm aware, there were changes in the defaults for most calculations as well as adding support for a full scripting language in the input files.

Hi @awvwgk ,
I am currently using this plugin with ORCA 5 and it works fine. We're using cclib for parsing the output so whatever cclib supports should work.
The new compound job scripting will probably not work since it uses slightly different syntax.
We'll need to update the readme.

README updated.


[bug] verify-token: Cannot find module '../../store/public-good-instance-root.json'

When javascript is compiled using ncc, the public-good-instance-root.json is not included in the built output and can't be read by sigstore-js.
Related https://github.com/sigstore/sigstore-js/issues/301

I have a working workaround in #1667. I'll split it into a separate PR so we can work around the issue until it's fixed in sigstore-js.

sigstore-js 1.1.1 was published so we should be able to upgrade and then remove the workaround we have put in place.
https://github.com/sigstore/sigstore-js/issues/301#issuecomment-1468817183s

Fixed by #1838


HideSourceFrames(debug:False) test fails

Ditto BreakpointsInDifferentFiles

This was one of the tests affected by the change to R_Interactive flag; @AlexanderSher fixed it.


Default database migration isn't compatible with MySQL

The following migration with default table settings producing MySQL error:
  SQLSTATE[42000]: Syntax error or access violation: 1059 Identifier name 'plan_subscription_schedules_scheduleable_type_scheduleable_id_index' is too long (SQL: alter table `plan_subscription_schedules` add index `plan_subscription_schedules_scheduleable_type_scheduleable_id_index`(`scheduleable_type`, `scheduleable_id`))

        Schema::create(config('subby.tables.plan_subscription_schedules'), function (Blueprint $table) {
            $table->increments('id');
            $table->unsignedInteger('subscription_id');
            $table->morphs('scheduleable');
            $table->timestamp('scheduled_at')->nullable();
            $table->timestamp('failed_at')->nullable();
            $table->timestamp('succeeded_at')->nullable();

            $table->unique(['subscription_id', 'scheduleable_type', 'scheduleable_id', 'scheduled_at'], 'unique_plan_subscription_keys');

            $table->foreign('subscription_id', 'plan_subscription_fk')->references('id')->on(config('subby.tables.plan_subscriptions'))->onDelete('cascade')->onUpdate('cascade');
        });

Workaround is to edit default table name in config/shubby.php to a shorter one.

Thanks for the post. I got stuck on the same issue. Changing "plan_subscription_schedules" to "subscription_schedules" resolved the issue. This was on MariaDB 10.6.7

Hello, It has a name to make it shorter "unique_plan_subscription_keys", but maybe mariaDB does not support it.

Found that the bug was not the unique index but in $table->morphs('scheduleable');. v7 fixes many migration errors :+1:

Then maybe you should check this: https://laravel.com/docs/9.x/migrations#index-lengths-mysql-mariadb
If that fixes your issue maybe I can add it to the docs.

@bpuig Yes that's the problem
Just add  Schema::defaultStringLength(191);
Thanks


Make a CARLA 0.7.1 release for Windows

Make a binary version of CARLA 0.7.1 available to download at release 0.7.1.

Now there is a Carla 0.7.1 binary for Windows ready to download. Take a look to the release page!

I want to ask if i can release a package for windows from ubuntu?

Hello @marcgpuig
I want to ask if I can release a package for windows from ubuntu?

Unreal Engine does not provide this feature, sorry.
Check out the Compiling For Linux Unreal's wiki page.

@marcgpuig
Thanks for your response
Is the windows release generated from carla on windows?

@JohnEmad92
Yes it is!


New Lines In Config Printed with '

I set a config variable TEST to a\na (and confirmed that this worked), but the CLI prints:
TEST=a'
'a

Right now, the CLI shell-escapes the variables it outputs (this might change in the future, as it can indeed be non-ideal in some cases, but for now that's the behavior).
Now, although I'm inclined to agree it's aesthetically unpleasing; technically, this formatting is a correct representation of your input:
sh-3.2$ TEST=a'
> 'a

sh-3.2$ printf "$TEST"
a
a

Is this a problem for you? If so, can you please clarify how? More information on your use case might at the very least help us in deciding whether shell-escaping is indeed the right thing to do.
Thanks!

This bug caused a config problem for us until we figured it out. One of our env vars has an @ character which displays escaped when you run aptible config.  We were setting up a new stack and copied the output of that command which in turn wrote the wrong data on the new env var on the new stack.


Error: ENOENT, stat dist/index.html

Sometimes console logs out Error: ENOENT, stat '/home/ubuntu/workspace/dist/index.html'

Having the same issue.

Same issue here.
Love the Boilerplate. Thanx

You should propably run "webpack" once in project directory to create dist/index.html

Has anyone figured this out?

Hello? Anybody?

in project directory run "webpack" to generate /dist/ directory with files
change output filename in webpack config file to "bundle.js" instead of "[name].js", like this:

output: {
    path: path.join(__dirname, '/dist/'),
    filename: 'bundle.js',
    publicPath: '/'
  }

npm start and it should work

:+1: yes, just run a webpack to create the files in the dist/ and then you should be good to go.

@jgog I noticed that at least for me, I had to change the webpack config filename too for hot loading to work - just running webpack made the ENOENT error message to disappear but made further changes to files not to hotload. Did you notice anything similar?

I left the config as it is, ran webpack and then ran npm run start but with that the reloading did not work. So I went into the dist/ and deleted the main.js and the reloading also started to work.

Hi guys,
What is the status here now? Should we change something in the boilerplate to avoid this confusion? I have not met the issue myself.

I don't think any change is required in the boilerplate.

cool :-)


Ensure that API endpoint sort their results in a consistent way

Tasks:

[ ] The project_list endpoint doesn't sort the returned projects and environments in a specific way. This issue should ensure a proper sorting order.
[ ] Similar issues may exists in other endpoints in inmanta-core and its extensions. This issue should make sure that all other endpoints sort their results in a consistent and meaningful way. Focus on the simple methods in protocol/server/services/.

Based on an initial check this is a list of endpoints that do not seem to sort at first sight. Maybe they still do in the data layer:

methods.get_compile_queue
methods.list_environments
methods.list_settings
methods_v2.environment_settings_list
methods.list_params
methods_v2.get_facts
methods.list_projects
methods_v2.project_list
methods_v2.get_resource_events


cannot compile cpp-sdk-samples for video demo in Linux

Dear Affectiva,
I would like to compile cpp-sdk on Ubuntu 16.04. I am able to successfully compile for opencv-webcam-demo but not able to complete the build of video-demo. The error log is as following:
Scanning dependencies of target opencv-webcam-demo
[ 25%] Building CXX object opencv-webcam-demo/CMakeFiles/opencv-webcam-demo.dir/opencv-webcam-demo.cpp.o
[ 50%] Linking CXX executable opencv-webcam-demo
[ 50%] Built target opencv-webcam-demo
Scanning dependencies of target video-demo
[ 75%] Building CXX object video-demo/CMakeFiles/video-demo.dir/video-demo.cpp.o
[100%] Linking CXX executable video-demo
CMakeFiles/video-demo.dir/video-demo.cpp.o: In function `main':
video-demo.cpp:(.text+0x1093): undefined reference to `affdex::VideoDetector::process(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)'
collect2: error: ld returned 1 exit status
video-demo/CMakeFiles/video-demo.dir/build.make:126: recipe for target 'video-demo/video-demo' failed
make[2]: *** [video-demo/video-demo] Error 1
CMakeFiles/Makefile2:140: recipe for target 'video-demo/CMakeFiles/video-demo.dir/all' failed
make[1]: *** [video-demo/CMakeFiles/video-demo.dir/all] Error 2
Makefile:127: recipe for target 'all' failed
make: *** [all] Error 2

Bests

Apologies for the late reply. Is this still an issue?


New fields in Export Members.csv

Currently, we only give totalDonations. Also need to add, how many times that person has donated.
Or maybe a better split is by individual donation (and subscription) and summing all transactions for that user under 'totalDonations'.
Feedback from @mfc

Hey! I had a similar request. What would be really useful for me right now is a field that tells me if a user is a monthly donor, or a one-time donor. For monthly donors, what is their monthly amount?

We still need to work on this.

new export CSV has active members and frequency.


InMemoryBackingStore performs poorly when reading properties

The BackingStore tries to keep the "dirty" state up to date on every call to read a property value. Because of the way the logic to track changes on collections was implemented, this has a detrimental impact on both CPU and memory consumption.
Currently, reading a property from a model is an operation of potentially exponential complexity that allocates memory on the heap.
Whether paying this cost on every property read in order to prevent sending additional data on the network is worth it or not is debatable, but it definitely isn't if we have no intention of performing any update call.
From my understanding of the implementation, the idea is to always return every values except when ReturnOnlyChangedValues is set to true. This seems to mostly be activated right before serialization, and deactivated immediately after.
If that is the case, I would suggest checking the value of ReturnOnlyChangedValues before calling EnsureCollectionPropertyIsConsistent when reading a property value. There is no rush to keep the dirty state synchronized until we are actually using it. On that note, it might also be a good idea to call it within EnumerateKeysForValuesChangedToNull, although I haven't exactly explored every intended usage of this function.
A local test with this modification applied produced large improvements on speed and removed any memory allocation when reading properties.
Is my understanding of the intent of InMemoryBackingStore correct? Would my suggested fix make sense?

Hi @Le-Merle
Thanks for using kiota and for reaching out.
The changes you're proposing sound coherent, I might be missing some details here.
Can you please send a pull request so we can discuss the changes in details?


Adding steamID to the avatar loaded signal.

After playing around with this, it felt like it would be a good idea to have the Steam ID of the avatar owner included.  This way you don't have to have variables scoped outside the method to track and handle these if you want to do some additional work.

Looks good and useful!


Select everything except some fields

I'm using prisma.user.findMany() to select users, but I don't want to select password or any other private field, instead of omitting the fields that I don't want, I have to select all the fields that I want.
Ex.
prisma.user.findMany({
			select: {
					id: true,
					username: true,
					isAdmin: true,
					totalReceivedAmount: true,
					spent: true,
					balance: true,
					contact: true,
					createdAt: true,
					updatedAt: true
				},
			orderBy: { createdAt: 'desc' }
		}),

Suggested solution
prisma.user.findMany({
			select: {'*': true, password: false},
			orderBy: { createdAt: 'desc' }
		})

Alternatives
prisma.user.findMany({
			deSelect: {password: true},
			orderBy: { createdAt: 'desc' }
		})
// OR
prisma.user.findMany({
			except: {password: true}, // to align with the SQL keywords.
			orderBy: { createdAt: 'desc' }
		})

Additional context
Issue #8151 can also be addressed along with this.
Ex:
prisma.user.findMany({
			select: {
                           '*': {
                              totalReceivedAmount: 'amount',
                           },
                           password: false,
                        }
			orderBy: { createdAt: 'desc' }
		})

Do you think your feature request would be covered by https://github.com/prisma/prisma/issues/5042 @vibhanshu909? If so, please close this issue and leave a 👍 over there.


Copied Tool

Hey, You have copy whole code of my tool without giving credit and also remove my name from README.md
It's not good that you copy everyone's code and stick your name on the code. Give credit to me otherwise I'll complaint to DMCA.!!

Sorry bro alright


Parsing error using + combinator

Hi Jonathan, i have the following issue using the @nest at-rule.
Using the > combinator inside a @nest selector it works fine. This snippet works as expected:
.Hint {
  color: blue

  @nest .Field:invalid > & {
    color: red;
  }
}

/*
	RETURNS
	.Hint {
	  color: blue
	}

	.Field:invalid > .Hint {
	    color: red;
	}
*/

But this returns a syntax error:
.Hint {
  color: blue

  @nest .Field:invalid + & {
    color: red;
  }
}

/*
	SHOULD RETURNS
	.Hint {
	  color: blue
	}

	.Field:invalid + .Hint {
	    color: red;
	}
*/

Module build failed: ParserError: Syntax Error at line: 1, column 16 at Generator.next ()

Now i know i could write the selector in another way to make it work, but i think it's just a sort of parsing bug because both are valid combinators, and i want to keep consistency using one syntax (using @nest).

To those who come across the error later; the issue was syntactical. While I’m not certain why earlier versions of PostCSS threw an error, the issue was the missing semicolon at the end of a declaration. Without it, CSS allows declarations to include newlines, and therefore the declaration kept going and going, consuming @nest .Field, etc.
Before:
.Hint {
  color: blue

  @nest .Field:invalid > & {

Fixed:
.Hint {
  color: blue;

  @nest .Field:invalid > & {


Include basic .htaccess to deny access to stats.php and peercount.php

Not sure what you think but for users who host bitcoind-status on Apache. It might be beneficial to include a .htaccess with some default rules. Particularly, for protecting the stats.php and peercount.php pages. I know a whitelisting system is in place, but every request still have to be checked by the app. Blocking at the server level might be more beneficial from a security point of view. With Apache it would be easily achieved with something like the examples below.
# Apache 2.4
<FilesMatch "^(stats\.php|peercount\.php)$">
    Require local
</FilesMatch>

# Apache 2.2
<FilesMatch "^(stats\.php|peercount\.php)$">
    Order Deny,Allow
    Deny from all
    Allow from <IP_ADDRESS>
</FilesMatch>

Instant 403 to any client that tries to access those pages outside of localhost, never touches the PHP app.
I personally deploy this code within the VirtualHost config, but it would work fine in .htaccess
Just my thoughts.

Nice idea, but I don't think that this should be the concern of the app - given that the app was written to be as portable as possible.
Also, if a user should want to open up access from other hosts (a bad idea, but possible nevertheless), then with this approach there would be two whitelists to manage.
This isn't to say that a server administrator shouldn't be taking steps to secure applications, but in this instance it's a bit of an over-reach IMO.

@craigwatson Sure. Totally understand. Perhaps something for the docs maybe.


F401 warning even when import in all

Dot import still gives warning F401 even when added to __all__
import a.b # F401 error warning here
__all__ = [ "a.b"]

I think the thing in the __all__ should just be "a"?

that worked. Thanks!


Replace class with className

The example in README doesn't work because the property name should be className (see https://github.com/jvanbruegge/tree-selector/blob/71d14c4477ae3f5f78e7f71f7c36cb7cfd8675de/src/types.ts#L5).

I'm closing this due to the lack of response.


It seems that System would be locked or doesn't work properly when Mutex cannot get due to PlatformMutex_Lock doesn't have return value

Hi, I wonder the system would be locked or not work properly if PlatformMutex_Lock API cannot get Mutex or happened the timeout of Mutex.
https://github.com/FreeRTOS/FreeRTOS-Cellular-Interface/blob/ccbd0fcce06fcb7b842bed61f207523c8f271fcb/source/cellular_common_api.c#L211
    PlatformMutex_Lock( &pContext->PktRespMutex );    // It gets the Mutex however, the API doesn't have return value. So, the code cannot check timeout.
    pContext->cbEvents.networkRegistrationCallback = networkRegistrationCallback;
    pContext->cbEvents.pNetworkRegistrationCallbackContext = pCallbackContext;
    PlatformMutex_Unlock( &pContext->PktRespMutex );

Does it nerver happnened?

HI @KeitaKashima ,
Thanks for bringing this up. We have not observed this.
Do you have a use case where you are seeing this behavior

Hi @shubnil ,
Thank you for your reply.
I have never seen the lock of the system here. I just checked the implementation of the Semaphore portion.


Continuous integration tests doesn't work, node version outdated

Hi @ErisDS, how are you doing? I assume that you are the maintainer, truly appreciate all your effort and really thank you for that. Noticed that some great projects are dependent on the npm package like gatsby and ghost, don't want to interfere with any ecosystem. I see relevant pull requests here and I will be happy to help maintain the project. Want to thank all the contributors for their time and hope to continue to see rss feeds all over the place.
I think the most important thing to do is to fix ci tests and update nodejs version

Hey @alexjorgef I’ve definitely neglected this package for a little too long & would be grateful for some help.
As a first step would you like to open PRs for the two things you mention?
I’ll be sure to review them promptly and we can take it from there?

Ok, thank you. Merged these two topics into one PR #103, and I will be happy to help and discuss further issues.

Hey @alexjorgef thank you so much! I've merged that right away.
FYI: Although I'm a maintainer on this repo, it's not my repo so I have limited controls. I can't get to GitHub's auto-rebase feature on existing PRs, and I can't add you as a contrib. I'll reach out to dylang and see what we can do to get this repo a little more ❤

Hello @ErisDS, no problem, thanks for the quick response. I think it's relevant to discuss some topics, I'll try to take some time this week to review issues/prs and some questions.


MatchingResources Missing From msal.interceptor.config.ts

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
msal-angular-v3.0.23
Wrapper Library
MSAL Angular (@azure/msal-angular)
Wrapper Library Version
msal-angular-v3.0.23
Public or Confidential Client?
Public
Description
Until v3.0.18, msal.interceptor.config.ts had the export for MatchingResources
export type MatchingResources = {
  absoluteResources: Array<string>;
  relativeResources: Array<string>;
};

On version 3.0.19 the export was removed and still not available on v3.0.23
Error Message
TS2305: Module<EMAIL_ADDRESS>has no exported member 'MatchingResources'.
MSAL Logs
No response
Network Trace (Preferrably Fiddler)

[ ] Sent
[ ] Pending

MSAL Configuration
{
    auth: {
            clientId: authConfig.clientId,
            authority: `https: //login.microsoftonline.com/${authConfig.tenantId}`, // Defaults to 'https://login.microsoftonline.com/common'
            redirectUri: baseHref + '/auth/', // Points to window.location.origin. You must register this URI on Azure portal/App Registration.
            postLogoutRedirectUri: baseHref + '/',
    },
        cache: {
            cacheLocation: BrowserCacheLocation.LocalStorage,
            storeAuthStateInCookie: isIE,
    },
        system: {
            loggerOptions: {
                loggerCallback(logLevel: LogLevel, message: string) {
                    console.log(message)
            },
                logLevel: LogLevel.Info,
                piiLoggingEnabled: false
        }
    },
}

Relevant Code Snippets
export type MatchingResources = {
  absoluteResources: Array<string>;
  relativeResources: Array<string>;
};

Reproduction Steps

Just check the diff between version 3.0.18 and 3.0.19

Expected Behavior
Keep the exported type or provide an alternative
Identity Provider
Entra ID (formerly Azure AD) / MSA
Browsers Affected (Select all that apply)
Chrome, Firefox, Edge, Safari
Regression
3.0.18
Source
External (Customer)

This type was never part of the public surface so you should not be dependent on it. Some of the implementation details of the interceptor needed to change to fix some bugs which is why this was removed.
Can you help me understand the impact of its removal to your specific requirements so I might suggest an alternative approach using API stable exports?


"Vârfu Câmpului", "Dobrinăuți-Hapăi" and "Ionășeni" are listed in the drop-down menu

Description:
"Vârfu Câmpului", "Dobrinăuți-Hapăi" and "Ionășeni" are listed in the drop-down menu alongside its corresponding county and commune, according to the law
Precondition:
The website is up an running.

Step 1
Type "Vârfu Câmpului" in the search bar.

Expected results
The location is listed in the drop-down menu as "Vârfu Câmpului, Botoșani (Vârfu Câmpului)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Type "Dobrinăuți-Hapăi" in the search bar.

Expected results
The location is listed in the drop-down menu as "Dobrinăuți-Hapăi, Botoșani (Vârfu Câmpului)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Type "Ionășeni" in the search bar.

Expected results
The location is listed in the drop-down menu as "Ionășeni, Botoșani (Vârfu Câmpului)".


UUIDType in sqlalchemy_utils support

Checklist

[X] There are no similar issues or pull requests for this yet.

Is your feature related to a problem? Please describe.
There is a UUID converter for sqlalchemy.dialects.postgresql.base.UUID but sqlalchemy_utils.types.uuid.UUIDType is missing.
Describe the solution you would like.
Add sqlalchemy_utils.types.uuid.UUIDType to the @converts annotation for conv_PgUuid.
Describe alternatives you considered
No response
Additional context
No response

Hey,
Thanks for the suggestion. PRs are welcome to add it


Engine image DaemonSet will be created even if the engine image is incompatible

When the Longhorn system is upgraded from v0.5.0 to v0.6.0, the new version engine image will be created by the new longhorn manager pod. But the old longhorn manger pods are still capable of creating DaemonSet for the new engine image object. Then something unexpected may happen.
e.g. The engine image DaemonSet created by old longhorn manager will use the deprecated label longhorn=engine-image rather than the new labels longhorn.io/component: engine-image, longhorn.io/engine-image: ei-xxxxxx

There is no way to get the engine image version info and decide if an engine image is incompatible before deploying the related DaemonSet. This issue is unavoidable.
Now we plan to delete the engine image DaemonSet when the engine image is compatible and the labels are mismatching. It's actually a workaround and it can be removed after v0.6.x upgrade.
The consequence of this workaround is that we cannot use the new engine image temporarily when upgrading to v0.6.x. It's acceptable.

Validation: Failed
Engine image DaemonSet still exists after the upgrade

$ kubectl -n longhorn-system get engineimage --output=jsonpath="{.items[?(@.spec.image=="longhornio/longhorn-engine:v0.6.0")].metadata.name}"

ei-7c102650

$ kubectl describe daemonsets -n longhorn-system engine-image-ei-7c102650

Name:           engine-image-ei-7c102650
Selector:       longhorn.io/component=engine-image,longhorn.io/engine-image=ei-7c102650
Node-Selector:  <none>
Labels:         longhorn.io/component=engine-image
                longhorn.io/engine-image=ei-7c102650
Annotations:    deprecated.daemonset.template.generation: 1
Desired Number of Nodes Scheduled: 3
Current Number of Nodes Scheduled: 3
Number of Nodes Scheduled with Up-to-date Pods: 3
Number of Nodes Scheduled with Available Pods: 3
Number of Nodes Misscheduled: 0
Pods Status:  3 Running / 0 Waiting / 0 Succeeded / 0 Failed
Pod Template:
  Labels:           longhorn.io/component=engine-image
                    longhorn.io/engine-image=ei-7c102650
  Service Account:  longhorn-service-account
  Containers:
   engine-image-ei-7c102650:
    Image:      longhornio/longhorn-engine:v0.6.0
    Port:       <none>
    Host Port:  <none>
    Command:
      /bin/bash
    Args:
      -c
      cp /usr/local/bin/longhorn* /data/ && echo installed && trap 'rm /data/longhorn* && echo cleaned up' EXIT && sleep infinity
    Readiness:    exec [ls /data/longhorn] delay=5s timeout=1s period=5s #success=1 #failure=3
    Environment:  <none>
    Mounts:
      /data/ from data (rw)
  Volumes:
   data:
    Type:          HostPath (bare host directory volume)
    Path:          /var/lib/rancher/longhorn/engine-binaries/longhornio-longhorn-engine-v0.6.0
    HostPathType:
Events:
  Type    Reason            Age    From                  Message
  ----    ------            ----   ----                  -------
  Normal  SuccessfulCreate  6m41s  daemonset-controller  Created pod: engine-image-ei-7c102650-4q2vh
  Normal  SuccessfulCreate  6m41s  daemonset-controller  Created pod: engine-image-ei-7c102650-gvr6n
  Normal  SuccessfulCreate  6m41s  daemonset-controller  Created pod: engine-image-ei-7c102650-mzsgq

Validation: PASSED
Steps to test: thanks to @shuo-wu
1- using Rancher v2.2.7, k8s 1.13.9
2- deploy longhorn v0.5.0
3- create the pv that trigger upgrade to v0.6.0 error. Create a pod with Longhorn volume and keep r/w data during upgrade.
4- try upgrade to v0.6.0, upgrade failed.
5- try to rollback to v0.5.0, rollback failed
6- delete all workloads (longhorn-driver-deployer, longhorn-manager, longhorn-post-upgrade, and longhorn-ui)
7- delete release histories of Helm
8- clean up the resources introduced by the failed v0.6.0 upgrade
9- upgrade to v0.6.1 from the charts, upgrade completed, longhorn app is in active state:
9.1- Check the data for the pod using old Longhorn volume to see if reading/writing data works fine during the workaround. Then delete this pod and the v0.5.0 engine image
9.2- #769 is not fixed in this version. This issue is trigger at this step:
9.2.1- Check and record the labels of the engine image daemonset whose engine image is longhornio/longhorn-engine:v0.6.0. This is the old labels.
9.2.2- Pick a random test case (e.g. test_volume_basic) and run it, the test will fail and the failure should be caused by func check_longhorn.
10- upgrade to v0.6.2 from the charts, upgrade completed, longhorn app is in active state.
10.1- #769 is fixed in this version. Re-check the engine image daemonset whose engine image is longhornio/longhorn-engine:v0.6.0. You will find that the daemonset is re-created and its labels are different from the old labels.
11- Run integration test. All integration tests should succeed (edited)


Don't use model_construct

User story
As a developer, I want the pydantic models to validate correctly without recursion issues. Fix any model creations to not use model_construct
Acceptance criteria

[ ] Given procedures mappings, create models without model_construct

Sprint Ready Checklist

[ ] 1. Acceptance criteria defined
[ ] 2. Team understands acceptance criteria
[ ] 3. Team has defined solution / steps to satisfy acceptance criteria
[ ] 4. Acceptance criteria is verifiable / testable
[ ] 5. External / 3rd Party dependencies identified
[ ] 6. Ticket is prioritized and sized

Notes
Add any helpful notes here.

Check whether we can create invalid models with other method without it throwing validation errors at the time of creation

Closing this for now as it will be sorted out in the V2 refactor.