Cardano ThreadNet test temporary network partition can be too long when d=1

I ran https://buildkite.com/input-output-hk/ouroboros-network-nightly/builds/211#90daaa25-f7ff-407e-aaec-ecffb2e319e4 expecting failures. There were multiple, most expected. But this one was not expected:
==> /tmp/tmp.BPkjiFiO4G/logs/005-Cardano.log <==
cardano
  Cardano ThreadNet
    simple convergence: FAIL (227.41s)
      *** Failed! (after 192 tests):
      Exception:
        Assertion failed
        CallStack (from HasCallStack):
          assert, called at test/Test/ThreadNet/Cardano.hs:906:5 in main:Test.ThreadNet.Cardano
      TestSetup {setupByronLowerBound = True, setupD = DecentralizationParam (1 % 1), setupHardFork = True, setupInitialNonce = Nonce "0158b05591a3aaf3ab052ec3dfa473b3a51c3b682247df8b58de561e7e7d2cbe", setupK = SecurityParam 5, setupPartition = Partition (SlotNo 146) (NumSlots 8), setupSlotLengthByron = SlotLength 16.199s, setupSlotLengthShelley = SlotLength 0.562s, setupTestConfig = TestConfig {initSeed = Seed<PHONE_NUMBER>885521969, nodeTopology = NodeTopology (fromList [(CoreNodeId 0,fromList []),(CoreNodeId 1,fromList [CoreNodeId 0])]), numCoreNodes = NumCoreNodes 2, numSlots = NumSlots 325}, setupVersion = (NodeToNodeV_3,HardForkNodeToNodeEnabled (EraNodeToNodeEnabled ByronNodeToNodeVersion2 :* EraNodeToNodeEnabled ShelleyNodeToNodeVersion1 :* Nil))}
      Use --quickcheck-replay=45201 to reproduce.

That assertion corresponded (PR 2550 made it a proper failure) to a wedge in the final chains.
Note that d=1. This means every slot is overlay, which means it's a completely round-robin schedule. Thus the the partition of 8 slots must somehow be responsible (indeed the two final chains' last shared block is from slot 144).
My main suspect is the genPartition function.
This Issue is to debug the above failure (and probably to revise the generator to avoid it).
... And I just noticed that the common prefix only has blocks from every other slot. That's also unexpected -- it suggests one of the nodes is (effectively) never (successfully) leading. There might be more going on here then I thought at first.

When I rebased this repro onto master (= 01f1d62df87e546ef4c310b6fd74f1fb1d8210bf - Merge #2543 (2 days ago) <iohk-bors[bot]>) and reverted 1aeab35689851c56f7bb8b9ab2c13139dc0729e2 (cardano: tune ThreadNet parameters to avoid wedges) the failure changed to a fatal error OverlayFailure (VRFKeyUnknown (KeyHash "a12ba2194b0b3e80fdad43e4eed374b52a76cfab55fdc66937fa1f5a")).
This makes me suspect that this error was being masked by the too-coarse catch-and-restart logic that PR #2548 recently refined.
Moreover, if I then also cherry-pick my local rough draft patch for Issue #2559, this repros runs successfully.
This suggests to me that my previous careful calculations recorded in detail in the comments of genPartition were indeed correct, and the failure (due to Issue #2559) was causing the mini protocols to crash and restart (nearly?) every slot. That could effectively add one slot worth of unanticipated delay to the partition, which would justify the original wedge error.
I'm now looking for evidence to support that theory.


Does not run under py 2.7

I just discovered this package but I'm unable to to get it run on stock el7 python with either 0.6.5 published on pypi or from master.   This appears to be because of the usage of tempfile.TemporaryDirectory, which is a py >= 3.2 construct.  It seems like a py 2.7 compatible tempdir wrapper needs to be used or the import from future can be removed.
$ python --version
Python 2.7.5
$ conda-mirror --version
Log level set to ERROR
0.6.5+10.g37f310c
$ conda-mirror --upstream-channel https://repo.continuum.io/pkgs/free/ --target-directory local_mirror --platform linux-64 -vvv
DEBUG: sys.argv: ['/home/vagrant/venv/bin/conda-mirror', '--upstream-channel', 'https://repo.continuum.io/pkgs/free/', '--target-directory', 'local_mirror', '--platform', 'linux-64', '-vvv']
DEBUG: download_template=https://repo.continuum.io/pkgs/{channel}/{platform}/{file_name}. channel=free
DEBUG: true blacklist
DEBUG: []
DEBUG: possible_packages_to_mirror
DEBUG: [u'_license-1.1-py27_0.tar.bz2',
 u'_license-1.1-py27_1.tar.bz2',
...
 u'zope.sqlalchemy-0.7.7-py36_0.tar.bz2']
DEBUG: download_template=https://repo.continuum.io/pkgs/{channel}/{platform}/{file_name}. channel=free
Log level set to DEBUG
Traceback (most recent call last):
  File "/home/vagrant/venv/bin/conda-mirror", line 9, in <module>
    load_entry_point('conda-mirror==0.6.5-10.g37f310c', 'console_scripts', 'conda-mirror')()
  File "/home/vagrant/venv/lib/python2.7/site-packages/conda_mirror/conda_mirror.py", line 227, in cli
    args.platform, blacklist, whitelist)
  File "/home/vagrant/venv/lib/python2.7/site-packages/conda_mirror/conda_mirror.py", line 513, in main
    with tempfile.TemporaryDirectory(dir=temp_directory) as download_dir:
AttributeError: 'module' object has no attribute 'TemporaryDirectory'

Ah sorry for missing this previously. Is python 2.7 support important for you?

No but it caught me by surprise as future is being used.  I ended up baking the module into a docker container with miniconda3.

This is the Dockerfile https://github.com/lsst-sqre/sandbox-cmirror/blob/master/cmirror/Dockerfile (if anyone else wants to package it up this way).

No but it caught me by surprise as future is being used

Oh. Yeah. That's a very good point. I'll make it clear that this project is py3 only. I really don't like supporting mixed py2/py3 projects.


Corrected spelling mistake within NSG example names

This change corrects a spelling mistake in one of the NSG example names

@danlister : Thanks for your contribution! The author(s) have been notified to review your proposed change.


add matches to Axis

add support for the tag "matches" in the Axis struct

Thanks, we were doing linked axis by hand :)


[BulletPhysics] [SUGGESTION] Add CVar to control how long until physics enter sleep

In source engine branches, there exists a convar called 'ragdoll_sleepaftertime' that defines what velocity a ragdoll has to be until it enters sleep and stops moving. Could we get a similar command for it, I find that the ragdolls take too long to freeze, so having a command to control this would be great.

bv_ragdoll_sleepaftertime has been added in https://github.com/hzqst/MetaHookSv/releases/tag/v20230519a

bv_ragdoll_sleepaftertime along with bv_ragdoll_sleeplinearvel and bv_ragdoll_sleepangularvel has been added in https://github.com/hzqst/MetaHookSv/releases/tag/v20230519a

Thank you so much! I've been having issues with ragdolls shaking alot, this should help stop it!


Add /.scratch folder to .gitignore

This folder is useful for local development and testing e.g. making changes to nv-swift-gizmos.

Seems reasonable; I know @clayg also uses this convention.


script makepdfandsite.sh does not generate the site correctly.

script makepdfandsite.sh does not generate the site readthedoc correctly.

fixed in version 1.2.8

fixed in version 1.2.8


chore: remove unecessary check in HandleExitCoder function and streamline logic

The updated HandleExitCoder function is better because it simplifies the type assertion and error handling by removing the redundant check for an empty error message, making the code more concise. It also eliminates the unnecessary return statement.
I re-ran the tests errors_test.go for regression testing and it passed

@zhaque44 sorry. I can't get any difference about the code.

@zhaque44 sorry. I can't get any difference about the code.

yes sure, let me explain right now in main:
err.Error() is called twice, which is less efficient:
if exitErr, ok := err.(ExitCoder); ok {
	if err.Error() != "" {  // First call to err.Error()
		fmt.Fprintln(ErrWriter, err)  // Second call to err.Error() inside fmt.Fprintln
	}
	OsExiter(exitErr.ExitCode())
	return
}

In the updated version in this PR, err.Error() is called once, stored in errMsg, and reused. This makes the second version more efficient and cleaner:
if exitErr, ok := err.(ExitCoder); ok {
	if errMsg := err.Error(); errMsg != "" {  // err.Error() is called once here
		fmt.Fprintln(ErrWriter, errMsg)  // Reusing errMsg instead of calling err.Error() again
	}
	OsExiter(exitErr.ExitCode())
	return
}

@zhaque44 got it. merge


Unconfig remove service registration should be best effort

Have you try trouble shooting doc?
Yes
VSTS type and version
On-Prem TFS

TFS 2017.1

What's not working?
Attempting to reconfigure an agent after the public TFS URL has changed. Is there a way to change the TFS URL with the agent once configured? Where is it stored?
Tried to run config remove but it cannot find the TFS endpoint and fails.
config.cmd remve
Removing Service
Removing Agent from the server
Enter Auth>
Failed: Removing agent from the server
Page not found.
In the logs it reports:
[2017-04-05 ERR Agent] Microsoft.VisualStudio.Services.WebApi.VssServiceResponseException: Page not found.
I now have to manually remove the WIndows Service.

What do you mean you have to manually remove the Windows Service? The Windows service is uninstalled before the attempt to remove the TFS server registration (in console output above Removing Service appears to have successfully happened and then failed removing from server).
We do plan to make unconfig best effort if fromving TFS server registration fails. What you can do for now is delete the hidden . files in the root of the agent dir and then reconfigure. During config, if using the same agent name, you will be asked whether to replace server registration, answer yes to take over the old registration.

Hi Eric,
The windows service in my case wasnt actually being removed from services. I had to manually remove it.  I did realise that I could have just edited the .agent file and changed the URL.
Proposed functionality sounds great.  Thanks!

OK I peeked through the code a little and it does not appear that removing the service is best effort. Do you have the agent diag log (under _diag folder) from when you tried unconfigure. If so please zip and send it to ersciple and I can take a look through it. Also do you remember which service name you manually removed? I'm curious whether it was actually the same agent.

@RangerDjanger I am not able to repro the issue you hit, i modify my .agent file before i run ./config.cmd remove, change serverUrl in .agent to point a nonexist location, ./config.cmd remove is still able to remove the windows service first for me.


Keep Repository Structure

Feature description 💡
When cloning a repository, keep the same folder structure when running a job inside an specific folder, instead of just copy the foldar that is specified in the workspace definition, this is usefull when you are using files outside of your workspace folder definition.
Anything else?
No response

Hi @alfespa17 ! Any updates for this?
Perhaps it could be less costly to update the terraformPlan default extension to allow the users to make use of the chdir argument instead?

Thanks for the idea @AppliNH, that could be an option. Let me check if that idea can help to make the change easier I will try to fix this in the following days and maybe release a beta so you can test it


fix: Update subpath from DeepCopy instead of pointer

Pull request

What this PR does / why we need it
Which issue(s) this PR fixes

Fixes #565
Describe testing done for PR

Additional information or special notes for your reviewer

Codecov Report

Merging #580 (fd3b47a) into main (fd35b06) will increase coverage by 0.00%.
The diff coverage is 100.00%.

@@           Coverage Diff           @@
##             main     #580   +/-   ##
=======================================
  Coverage   85.76%   85.76%
=======================================
  Files          68       68
  Lines        4249     4250    +1
=======================================
+ Hits         3644     3645    +1
  Misses        473      473
  Partials      132      132

Impacted Files
Coverage Δ

pkg/apis/cartographer/v1alpha1/workload_helpers.go
94.81% <100.00%> (+0.01%)
:arrow_up:


Fix #1357: Replace mode not shown

Fixes #1357  - picks up https://github.com/onivim/reason-libvim/pull/95

/azp run


Invalid Trade Volume

I follow exactly all the required instructions from the youtube video .
https://www.youtube.com/watch?v=U2VdXdm2qlM&list=PLv-cA-4O3y97vTpghgRqiPBjmpgWskYDl&index=7
and I got the follow errors when I use the following Python command.
_zmq.DWX_MTX_NEW_TRADE()
{'_action': 'EXECUTION', '_response': '131', 'response_value': 'invalid trade volume'}
I also try different Python command with smaller lot size.  However, the error message is the same.
_zmq.DWX_MTX_SEND_COMMAND(_action='OPEN', _type=0,
_symbol='EURUSD', _price=0.0,
_SL=25, _TP=50, _comment="Python-to-MT",
_lots=0.001, _magic=123456, _ticket=0)

If you haven't already resolved, i think your size is possibly too small?
1 Lot = 100,000 -> 1.00
1 Mini-Lot = 10,000 -> 0.1
1 micro-Lot = 1,000 -> 0.01
I've never seen nor heard of a "Micro-Micro-Lot" = 100 -> 0.001


[BUG][rancher-monitoring-crd] Missing subresource status on prometheus operator

Issue
After upgrading to 100.2.0+up40.1.2, alert manager was not updating its configuration.
Checked the prometheus operator logs, and found the following error:
level=error ts=2023-03-24T17:11:18.663327398Z caller=klog.go:116 component=k8s_client_runtime func=ErrorDepth msg="status \"cattle-monitoring-system/rancher-monitoring-prometheus\" failed: failed to update status subresource: prometheuses.monitoring.coreos.com \"rancher-monitoring-prometheus\" not found"

Additional info
On the prometheus-operator repository found this issue: https://github.com/prometheus-operator/prometheus-operator/issues/4823#issuecomment-1154934837
I checked the CRD on rancher-monitoring-crd, and there is no status subresource defined.

There's an ugly way to get over this if it's present in your version and not likely to to fixed (2.7, etc)
Just add this manifest to your cluster:
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  annotations:
  labels:
    app: rancher-monitoring-crd-manager-patch
  name: rancher-monitoring-crd-manager-patch
rules:
- apiGroups:
  - apiextensions.k8s.io
  resources:
  - customresourcedefinitions
  verbs:
  - create
  - get
  - patch
  - delete
  - replace
  - update
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  labels:
    app: rancher-monitoring-crd-manager-patch
  name: rancher-monitoring-crd-manager-patch
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: rancher-monitoring-crd-manager
subjects:
- kind: ServiceAccount
  name: rancher-monitoring-crd-manager
  namespace: cattle-monitoring-system


Error: Uncaught ReferenceError: MarkerClusterer is not defined

Seem to still get this error if do_clustering isn't set. Not a big deal since I can just set it.
gmaps4rails (1.4.8)
No error:
:markers     => { :data => gmap_prepare_homes(@homes), :options => { :do_clustering => false } })
Error: Uncaught ReferenceError: MarkerClusterer is not defined
:markers     => { :data => gmap_prepare_homes(@homes) })
:markers     => { :data => gmap_prepare_homes(@homes), :options => {  } })
gmap_prepare_homes is a helper that calls to_gmaps4rails and sets up some pin pictures. Full code:
=gmaps(:map_options => { :center_latitude => @search.search_pin.nil? ? Search::EDMONTON_GEO[:lat] : @search.search_pin["lat"],  :center_longitude => @search.search_pin.nil? ? Search::EDMONTON_GEO[:lng] : @search.search_pin["lng"],  :zoom => @search.search_pin.nil? ? 11 : 12}, :markers     => { :data => gmap_prepare_dayhomes(@homes), :options => { } })

Im showing the same error recently
Bundle complete! 29 Gemfile dependencies, 126 gems now installed.
Use bundle show [gemname] to see where a bundled gem is installed.
ste (master) $ rails generate gmaps4rails:install
Could not find generator 'gmaps4rails:install'. Maybe you meant 'gmaps4rails:copy_js' or 'gmaps4rails:copy_coffee' or 'jquery:datatables:install'
Run rails generate --help for more options.
ste (master) $ bundle show gmaps4rails
/usr/local/rvm/gems/ruby-2.3.0/gems/gmaps4rails-2.1.2
Would aprreciate a pointer or thoughts ?

RESOLVED
Google moved the resource to Git hub, changed the link to JS too
https://cdn.rawgit.com/googlemaps/js-marker-clusterer/gh-pages/src/markerclusterer.js


improve selenium driver management

trying to fix https://github.com/cyrilou242/jnotebook/issues/14


Use process unique temporary so we don't get duplicate temporary path…

This commit resolves #378. The issue was that the temporary directory path was only distinguished by a second-level timestamp, which meant interleaved xcodegen calls would use the same temporary directory. This fix uses a globally unique string given by NSProcessInfo.
Test plan:

Run multiple instances of XcodeGen at the same time in a tight loop (I used while true; do xcodegen;  done
Observe that we don't see any errors reported as before.

Would you be able to add a changelog entry as well?

@yonaskolb Thanks! You would be the one to merge this, I take it?

Sorry thought I did 😄


feat(import): default to force to be able to re-import

:tada: This PR is included in version 1.20.0 :tada:
The release is available on:

v1.20.0
GitHub release

Your semantic-release bot :package::rocket:


Categorical encoders

IMPORTANT: Please do not create a Pull Request without creating an issue first.
Before submitting (must do checklist)

[x] Did you read the contribution guide?
[x] Did you update the docs? We use Numpy format for all the methods and classes.
[x] Did you write any new necessary tests?
[ ] Did you update the CHANGELOG?

Type of Change

[ ] Examples / docs / tutorials / contributors update
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Improvement (non-breaking change which improves an existing feature)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Proposed Changes

Related Issue

Closing issues

Codecov Report

Merging #431 (a9382ea) into master (3eb2638) will decrease coverage by 34.98%.
The diff coverage is 30.61%.

@@             Coverage Diff             @@
##           master     #431       +/-   ##
===========================================
- Coverage   87.64%   52.66%   -34.99%
===========================================
  Files         112      113        +1
  Lines        5276     5374       +98
===========================================
- Hits         4624     2830     -1794
- Misses        652     2544     +1892

Impacted Files
Coverage Δ

etna/transforms/encoders/categorical.py
29.16% <29.16%> (ø)

etna/transforms/__init__.py
100.00% <100.00%> (ø)

etna/transforms/encoders/__init__.py
100.00% <100.00%> (ø)

etna/commands/__init__.py
0.00% <0.00%> (-100.00%)
:arrow_down:

etna/commands/backtest_command.py
0.00% <0.00%> (-96.43%)
:arrow_down:

etna/commands/forecast_command.py
0.00% <0.00%> (-92.00%)
:arrow_down:

etna/commands/__main__.py
0.00% <0.00%> (-87.50%)
:arrow_down:

etna/commands/resolvers.py
0.00% <0.00%> (-80.00%)
:arrow_down:

etna/analysis/outliers/density_outliers.py
22.44% <0.00%> (-75.52%)
:arrow_down:

etna/transforms/timestamp/time_flags.py
26.02% <0.00%> (-73.98%)
:arrow_down:

... and 67 more

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 3eb2638...a9382ea. Read the comment docs.


Match *.youtube.com to allow skip ads on Youtube Music

Wait, seems this can cause youtube music always reloading...

Oh, I didnt see that, I will try again. Since you havent increased the version for the script, it won't update itself to GreasyFork, so dont worry.

Basically the mechanism of skipping ads on YouTube Music is similar to YouTube video. But there are still some differences. I think the code needs to be changed for YouTube Music.


feat: batch runner (and/or config parser?)

Idea
In current simulations like portfolio_simulations we require an end user to not only create their own configs (bad), but to parse them themselves (worse), and moreover to spawn tokio tasks to run parallelized simulations (horrible).
We should abstract away as much of this as possible. At the very least, a batch runner could be made and the end user can create a bunch of environments but we should provide the concurrent/async logic so a simpler API can be given. Ideally, we can reduce main.rs in portfolio_simulations drastically. Further, we could conceivably remove config.rs in portfolio_simulations all together.

Possibly a #[derive(Config)] proc macro for a list of Parameter structs would be helpful?
Perhaps some of the config stuff should lie in arbiter-bin?

Is your feature request related to a problem? Please describe.
Yes, there is far too much code (and it is difficult) for an end user to write!
Solution
Solution is not clear yet. I will investigate some techniques.
Alternative approaches
I look forward to hearing ideas!

Maybe we can revisit this @Autoparallel? Maybe after standup?

I think after our MVP we can migrate some of these features into arbiter


[FLINK-14406][runtime] Exposes managed memory usage through the REST API

What is the purpose of the change
This change is meant to expose the managed memory usage through the REST API to make it available in the web UI.
Brief change log

Added new metrics for used and total managed memory
The used managed memory is determined by accessing the MemoryManagers of all active slots of the TaskSlotTable
Added new metrics to TaskManagerDetailsHandler

Verifying this change
This change added tests and can be verified as follows:

the TaskManagerDetailsHandlerTest was extended accordingly
A test was added for retrieving all active slots in TaskSlotTableImplTest

Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): no
The public API, i.e., is any changed class annotated with @Public(Evolving): no
The serializers: no
The runtime per-record code paths (performance sensitive): no
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: no
The S3 file system connector: no

Documentation

Does this pull request introduce a new feature? yes
If yes, how is the feature documented? docs

@azagrebin Feel free to review the changes.
I am not 100% happy with the naming of the metrics (specifically, Status.ManagedMemory.Used vs Status.ManagedMemory.UsedMemory vs Status.Flink.ManagedMemory.Used vs ...?). But I wanted to give it a try to start a discussion on it.

Another thing that's up for discussion: The current implementation does provide redundant information in the REST API.
{
  "id": "<IP_ADDRESS>:58646-64d0d8",
  "path": "akka.tcp://flink@<IP_ADDRESS>:58646/user/rpc/taskmanager_0",
  "dataPort": 58648,
  "jmxPort": -1,
  "timeSinceLastHeartbeat":<PHONE_NUMBER>165,
  "slotsNumber": 1,
  "freeSlots": 0,
  "totalResource": {
    "cpuCores": 0,
    "taskHeapMemory": 0,
    "taskOffHeapMemory": 0,
    "managedMemory": 0,
    "networkMemory": 0,
    "extendedResources": {}
  },
  "freeResource": {
    "cpuCores": 0,
    "taskHeapMemory": 0,
    "taskOffHeapMemory": 0,
    "managedMemory": 0,
    "networkMemory": 0,
    "extendedResources": {}
  },
  "hardware": {
    "cpuCores": 12,
    "physicalMemory":<PHONE_NUMBER>4,
    "freeMemory": 536805376,
    "managedMemory": 536870920  <-- redundant
  },
  "memoryConfiguration": {
    "frameworkHeap": 134217728,
    "taskHeap": 402653174,
    "frameworkOffHeap": 134217728,
    "taskOffHeap": 0,
    "networkMemory": 134217730,
    "managedMemory": 536870920,  <-- redundant
    "jvmMetaspace": 268435456,
    "jvmOverhead":<PHONE_NUMBER>,
    "totalFlinkMemory": null,
    "totalProcessMemory":<PHONE_NUMBER>
  },
  "metrics": {
    "heapUsed": 119710848,
    "heapCommitted": 536805376,
    "heapMax": 536805376,
    "nonHeapUsed": 70984004,
    "nonHeapCommitted": 455180084,
    "nonHeapMax": -1,
    "directCount": 4115,
    "directUsed": 134750413,
    "directMax": 134750412,
    "mappedCount": 0,
    "mappedUsed": 0,
    "mappedMax": 0,
    "memorySegmentsAvailable": 4092,
    "memorySegmentsTotal": 4096,
    "nettyShuffleMemorySegmentsAvailable": 4092,
    "nettyShuffleMemorySegmentsUsed": 4,
    "nettyShuffleMemorySegmentsTotal": 4096,
    "nettyShuffleMemoryAvailable": 134086656,
    "nettyShuffleMemoryUsed": 131072,
    "nettyShuffleMemoryTotal": 134217728,
    "managedMemoryAvailable": 536870920,
    "managedMemoryUsed": 0,
    "managedMemoryTotal": 536870920, <-- redundant
    "garbageCollectors": [
      {
        "name": "scavenge",
        "count": 2,
        "time": 21
      },
      {
        "name": "global",
        "count": 0,
        "time": 0
      }
    ]
  }
}

The example above shows that metrics.managedMemoryTotal, memoryConfiguration.managedMemory, and hardware.managedMemory are showing the same value. At least, hardware.managedMemory seems to be out of place. IMHO, we could remove it as part of this PR. Not sure about the other two, though, since it's kind of standardized.

Allow me to play devil's advocate: Why are we exposing more and more things explicitly via the REST API, instead of querying the REST metric endpoints for job-/taskmanagers?

Allow me to play devil's advocate: Why are we exposing more and more things explicitly via the REST API, instead of querying the REST metric endpoints for job-/taskmanagers?

Good point. @vthinkxie What do you think about using the Metric REST API endpoint in addition to the TaskManagerDetailsHandler's REST endpoint? This way we wouldn't have to extend this REST API. Instead, we could create a ticket to remove the metric information from the TaskManagerDetailsHandler endpoint as a cleanup task.

Hi, @XComp
both solutions work for me, but I suggest not to remove the metric information from the TaskManagerDetailsHandler since it would bring break changes in the Rest API

Hi, @XComp
both solutions work for me, but I suggest not to remove the metric information from the TaskManagerDetailsHandler since it would bring break changes to the Rest API

Thanks for your opinion. I agree with removing the metric information shouldn't be done right away. But we might consider it when thinking about updating the REST API in general having v2 (as you mentioned as well with). There were a few things about the REST API that we could improve. Having a ticket proposing the cleanup of the metrics in the REST endpoint's response is just for documentation purposes for now.

I reverted the TaskManagerDetailsHandler REST API changes as discussed and created FLINK-19559 for the cleanup.

I reorganized the commits and double-checked that all issues that were raised in this PR are addressed.

The CI failure looks unrelated (FLINK-19469), merging the PR


ZFIN-8218: Partial Refactor of HibernatePublicationRepository

This is a partial refactor of HibernatePublicationRepository.

Converted some appended strings into text blocks
Converted Query objects to parameterized Query objects
Converted some queries to the JPA Criteria Builder style
Removed methods that seem to be unused
Re-ordered methods in HibernatePublicationRepository to match order in PublicationRepository
Changed public methods to private methods if they are only used in HibernatePublicationRepository (and moved them to the bottom of the file)
Added test file: PublicationRepositoryRefactorTest to test methods that were converted (if not covered by PublicationRepositoryTest)
Removed tests for removed methods

Closing this PR to replace with one that has a cleaner git history


Remove last_seen field from customer

Description
Dropped required field last_seen from Customer table and added last_seen_at as required field
Issue
#720
Checklist

[x] Everything passes when running mix test
[x] Ran mix format
[x] No frontend compilation warnings

@reichert621 any comments on this?

@reichert621 any updates on this?

thanks for the help on this @utsav0209! ❤  (sorry for the delay)


Use SilentError to log errors when parsing config.

The original error and stack is already printed to the console, there is no need to throw a "real" error (because the stack within ember-cli-deploy itself is not useful).

Thanks @rwjblue


[WIP] Add TensorFlow MNIST example

@betatim asked me whether I could make an example that optimizes the hyperparameters of a neural network using scikit-optimize.
I've written a short convolutional neural network that can classify handwritten digits from the MNIST dataset.
I've then exposed various hyperparameters like the number of layers, the dropout probability, etc. and used scikit-optimize to improve them.
Is everyone happy with the example?
I'll try to improve it a bit further, so this is only [WIP] for now.

Thanks! I'll try to have a look over the weekend.

Sorry about the delay, note that the default GaussianProcessRegressor in sklearn does not tune the kernel (https://github.com/scikit-learn/scikit-learn/blob/master/sklearn/gaussian_process/gpr.py#L155)   You can remove the alpha parameter since now the noise should also be tuned pending https://github.com/scikit-optimize/scikit-optimize/pull/225

It might also be worth trying forest_minimize since it is claimed that it is highly beneficial when the number of categorical parameters are high.
What are your thought about integrating this? @betatim @glouppe

I'll close this, we can re-open/think if @ibab comes back.


Behavior-documentation inconsistency for jax.numpy.linalg.cholesky

Description
The docstring for jax.numpy.linalg.cholesky seems to be copied from its NumPy counterpart, where it states:

... No checking is performed to verify whether a is Hermitian or not. ...

However, the actual implementation in jax/_src/lax/linalg.py does indeed always symmetrize the input matrix. Its argument symmetrize_input, which controls whether symmetrization happens, defaults to True and is not exposed to the end user.
IMHO this has two consequences:

Users can be misled and confused by the behavior of the method.
Symmetrization may introduce unnecessary overhead when the input matrix is already Hermitian.

What jax/jaxlib version are you using?
upstream
Which accelerator(s) are you using?
No response
Additional System Info
No response

Thanks for bringing this up! Actually, I think you're raising a few questions:

whether the jnp.linalg.cholesky implementation is consistent with its docstring;
whether symmetrize_input is exposed to the end user;
whether there's some confusing behavior that can result from the current implementation;
whether there's unnecessary overhead.

IIUC, the implementation is consistent with the docstring (many jax.numpy docstrings are at runtime dynamically populated from the numpy module); the jax.numpy.cholesky implementation does not do any checking to verify if the input is (already) Hermitian. Instead of checking, it always does a projection onto the symmetric matrices!
The symmetrize_input option is exposed in the jax.lax.linalg.cholesky function. Our general policy is to make the jax.numpy functions track very closely to their numpy counterparts, usually not changing their signature (e.g. by adding arguments), with good defaults. In this case, we didn't add the symmetrize_input argument at the jax.numpy.linalg level and instead set it to True because we think that's a good default for automatic differentiation purposes; see e.g. this discussion. With any choice of defaults, it's important for the user to be able to override them as needed. That's how we intend lower-level functions, in this case like jax.lax.linalg.cholesky, to be used.
For overheads, I'm not sure how often those will matter in practice (since the overhead is like O(N^2) compared to Cholesky's O(N^3). But I'm sure there are regimes where that behavior is undesirable.
Other than performance overhead, is there some other kind of user confusion you had in mind?
Given all that, I can think of at least two courses of action:

add a mention of jax.lax.linalg.cholesky in the jax.numpy.linalg.cholesky docstring, and/or
add the symmetrize_input to the jax.numpy.linalg.cholesky function.

I don't think removing the default of symmetrize_input=True from jax.numpy.linalg.cholesky is a viable option though.
WDYT? Any other options we should consider?

Hi Matthew, many thanks for your explanations! That is very helpful.
I agree that the behavior is not strictly-speaking going against the docstring, but I think more clarification would be even better. When I first read the docstring, my mind automatically (although incorrectly) assumed that the method might not either check or fix any asymmetries in the input matrix. Having the matrix automatically symmetrized then turned out to be a surprise for me. As you have pointed out, perhaps we could modify the docstring to say something like:

... No checking is performed to verify whether a is Hermitian or not. Rather, the input matrix will be automatically symmetrized by averaging with its conjugate tranpose. To explicit control whether symmetrization happens, please use the lower-level method jax.lax.linalg.cholesky ...

Performance-wise, the transposition/symmetrization operation is quadratic in cost but memory-bound. This is only in theory so I can't say without doing experiments if this will matter in a practical scenario. But at least having an option to turn symmetrization on or off (as lax.linalg.cholesky already does) would be great.
What do you think?

Closing as a duplicate of #9473


Update rusttype to 0.7

While it might be technically a breaking change, Font and PositionedGlyph itself retain the same interface, so I think it should be ok to update it as there were numerous changes already
The only breaking change was CacheBuilder which is not used by imageproc, at least directly

Thanks


Median age of open issues

109.19 days is the mean age of currently open pull requests

If there is also median age, readers can also qulickly glimpse the distribution of the ages.
Median much greater than mean - issues typicaly stay open for long, but there can be very short spanning.
Median mush less than mean - issues typically resolved fast, but there are long-living outliners.
The same for pull reqeusts.

I agree that this would be an excellent idea to have. As I recall, postgres doesn't have a builtin median aggregate function, which limits us a bit, since I didn't want to have to ship several thousand datetimes over the pg connection on every pageload. But perhaps I'm being paranoid -- it's worth trying.
My time is pretty constrained right now, so it'll be a bit before I can get around to this. If you'd like help setting up a dev environment and working on this, please let me know.

Maybe cache the median for a day.

The scraper could do this. But pretty soon I'd like to move as much scraping as possible to a stateless system based on webhooks from external services, which conflicts with this goal.
I could set up a materialized view in postgres, but I don't like putting logic in the database when I don't have a robust process for versioning and deploying PG stuff. Thinking out loud I guess I could use a diesel migration for doing that.
It might also be worth trying as a request-on-pageload, I just haven't tried it yet.

If do something heavyweight periodically then it can be not just median, but a plot or diagram with percentiles.
Maybe a Postgresql's stored procedure do it faster than every day and with caching inside the database?

You can emulate this with percentile_count. http://www.skillslogic.com/blogdetail/66/calculating-medians-in-postgresql-with-percentile_cont

Boilerplate: I'm going to refocus this project on rfcbot, since that's the primary usage rusty-dash.com is seeing.


Onboarding a computer as the IoT thing - Account in step 5 and HTTP 401 error

Hi Vitaliy Rudnytskiy,
In Step 5 "Add your computer as a new thing" of "Onboarding a computer as the IoT thing", Account number is different from a2667617c and it is s0003605838trial. I proceeded as it was.
In Step 3 "Update the code and run the program" of "Send the CPU usage data to SAP IoT Application Enablement", I updated deviceid and authtoken variables in the script code but didn't change hostiotmms (the value is 'iotmmsa2667617c.hana.ondemand.com').
Then I run the script with phthon and I got the following error message. My laptop is not hindered by a corporate proxy by using mobile phone hot spot.
Access to the requested resource is not authorized (HTTP 401)
Regards,
Masahiro Obata

I'm having the same issue. Changing the host name to iotmmss0003605838trial.hana.ondemand.com does not help.

Thank you for your feedback. We haven't heard from you in the past 30 days, so we are closing the issue.
If you still have questions, feel free to reopen the issue.


How to change my owner private key on bloks.io if connected with ledger nano.

Hello.
My owner key was compromised so I am trying to find a way to change my key or to make a new account and connect it to my ledger.
I have been unsuccessful in changing my key using different methods as my ledger nano does not let me change the key. I have made a new account on bloks but unable to find out how to connect it to my ledger instead of my old account. Any advice?
Ray.

any luck bro? I'm looking for this also.

Hey man,
Yeah this happened a while ago but I never got a solution. I was afraid
that I potentially compromised the key from a scam site advertising an
airdrop.
I never lost anything but I decided just to move my Eos out of the wallet
just in case and stopped using the wallet.
Best of luck.
On Mon, 28 Mar 2022, 12:36 L Shaf, @.***> wrote:

any luck bro? I'm looking for this also.
—
Reply to this email directly, view it on GitHub
https://github.com/tarassh/fairy-wallet/issues/162#issuecomment-1080541918,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUPWZXEZ6K6QANSXCKED43DVCGKVLANCNFSM46XJYMEA
.
You are receiving this because you authored the thread.Message ID:
@.***>

Well, I just found out it's bug for EOS 1.4.2 I suppose.
I just tested it using ledgerHQ repository here https://github.com/LedgerHQ/app-eos .
Have no idea what's wrong with that. I already contacted both ledger support and put issue on original repository.
Hope they will reply soon and get it fixed.

I'm pretty sure they will update EOS app for it in order to fix it.
So just wait till it happen or maybe I will inform you when it's available in here.

@Rayezor good news bro, they update it several weeks ago and yet no public release until I bough new nano s and build it on my own then load it to nano s and then it works.
I've asked them to patch live version with the new one and they said ASAP.
I don't know about ETA but if you want it right away, you can do the same as me.

Awesome, thanks for the update! So when the update comes in will I be able
to change my private key address?
Ray.
On Fri, Apr 8, 2022 at 1:03 PM L Shaf @.***> wrote:

@Rayezor https://github.com/Rayezor good news bro, they update it
several weeks ago and yet no public release until I bough new nano s and
build it on my own then load it to nano s and then it works.
I've asked them to patch live version with the new one and they said ASAP.
I don't know about ETA but if you want it right away, you can do the same
as me.
—
Reply to this email directly, view it on GitHub
https://github.com/tarassh/fairy-wallet/issues/162#issuecomment-1092789030,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUPWZXAQBXKKCVZJZDSRRWLVEAOAZANCNFSM46XJYMEA
.
You are receiving this because you were mentioned.Message ID:
@.***>

@Rayezor  yes of course, I've tried and successfully change both my owner and active key.


Kanbard board

We are a team of two, @christianonoh & @zamcham
https://github.com/christianonoh/space-travel/

@christianonoh, @zamcham. The link you submitted for your kanban board project is wrong.  Please find below the correct link:
https://github.com/christianonoh/space-travel/projects/1

@christianonoh, @zamcham. The link you included in your comment as project link is wrong. Please find below the correct link: @christianonoh, @zamcham. Kindly edit your comment to update your project link. https://github.com/christianonoh/space-travel/projects/1

Thank you @topeogunleye the link is updated now!

@christianonoh, @zamcham. The link you included in your comment as project link is wrong. Please find below the correct link: @christianonoh, @zamcham. Kindly edit your comment to update your project link. https://github.com/christianonoh/space-travel/projects/1

Thank you @topeogunleye the link is updated now!

ýou're welcome 😄

Hi @christianonoh, @zamcham,
Your project is complete! Great job for nailing it right on the first attempt 🥇. There is nothing else to say other than... it's time to merge it 🍾🚢 :shipit: . Congratulations!  🎉💯🌟

To highlight :champagne:

Set up Kanban board successfully. ✔
Tasks are distributed equally amongst team members. ✔
All cards are assigned to team members ✔
Students' board is a copy of template board ✔

Optional suggestions

Nothing to mention.

Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.
Please, do not open a new Pull Request for re-reviews. You should use the same Pull Request submitted for the first review, either valid or invalid unless it is requested otherwise.

As described in the Code reviews limits policy you have 1 more limited review per this project. If you think that the code review was not fair, you can request a second opinion using this form.


Add new "initializationAttributes" annotation

Some attributes are solely intended for the initialization of a state and cannot be derived from the state with a subsequent read. Lyra must support such attributes. They are similar to immutable attributes in that a change should result in the recreation of the resource, but different in the sense that it is not possible to compare them to an actual value (the value is lost after creation of the resource).
The Heroku "Personal" attribute is a good example of the problem. The OrganizationAppCreateOpts struct used by the OrganizationAppCreate function contains the attribute (documented as "force creation of the app in the user account even if a default org"). A subsequent read using the function OrganizationAppInfo however, returns a OrganizationApp struct where the attribute is no longer available. It's not strange at all, given that the attribute is an instruction on how to proceed with some aspect of create.
One challenge here is that we cannot detect if the desired attribute found in the manifest matches what was used when the resource was created. There is no "source of truth" for this attribute. This leaves us with some alternatives:

We don't track the initialization attributes at all. I.e. if the user changes such an attribute in a manifest it will go undetected until the resource is recreated for other reasons than that change.
We track such attributes in the identity store together with the external ID. The disadvantage with that approach is that we introduce our own "source of truth".
We say that it is the resource handler's responsibility to track the attribute, which means that it instead introduces its own "source of truth" (in essence, this is just sticking our heads in the sand and ignore the whole thing as SEP).

My preference, given that none of the alternatives are ideal, is #1.

One option that is viable is to make the external ID be a URL and then let the Create function that is responsible for creating that ID construct an URL where initialization attributes are included as URL parameters. That way, the attributes are forever attached to the created instance. Perhaps not the most intuitive way to do it, but it works.

We'd have to ensure that said URL is compatible with the upstream API client. Wouldn't want to have to rewrite an API client just to force it to work the way we want it to in Lyra.

I don't see how anything but Lyra would ever see that URL. Look at the example I made in my PR to your PR: https://github.com/dhollinger/lyra/pull/1

Our idea of using Terrform natively sounds related. In that case you again have a input to the step that cannot be read back - the Terraform files. It's not really the same situation as the Heroku creation attribute which presumably doesn't have any bearing on existing resources. I don't think we really answered the TF question yet and I wonder if that model, whatever it might be, might solve this case too?


Assimp: Don't touch normals.

In Assimp do not modify normals.
This causes normals in models to be deformed.

Thanks!


Error When Trying to Build Wheel for Numpy with release v-1.0.0

Hello, when trying to run the pip install -r requirements.txt with release v-1.0.0, I run into an error when trying to build the wheel for numpy. Some of the dependencies which pip is claiming it cannot find (such as mkl_rt), I already installed manually in order to keep the installation from returning an error when installing scipy. I'm using Ubuntu 20.04. The full error is below.
numpy_build_error.txt

mkl_rt is just one of many BLAS/LAPACK libraries.  From the attached output, you can see that numpy finds your OpenBLAS and ATLAS installations and is using those libraries to build against.  These are the recommended BLAS/LAPACK implementations for numpy, I think.
That said, you could try sudo apt install numpy to get numpy (or any of the dependencies) installed on your system.

This is an error caused by the OP's machine not having BLAS/LAPACK libraries properly installed, not a RAMSTK issue.

This is an error caused by the OP's machine not having BLAS/LAPACK libraries properly installed, not a RAMSTK issue.


[QUESTION] "Timestamp with Time Zone" type using Presto/Trino connector

Hi;
We are using the Presto Connector & Trino jdbc driver to expose some data from Trino to Tableau Server. Everything seems ok except this one issue: Columns with "TIMESTAMP WITH TIME ZONE" (TimestampZ) type are imported as Strings by default, and when converted to DateTime in the gui, they end up in UTC. (Tableau inserts CAST(col AS TIMESTAMP)). We would prefer these to be shown in local timezone as TimestampZ implies.
In order to better understand whether that was possible, I set up another database which has timestamp types both with and without Time Zone (TimestampZ/Timestamp): PostgreSQL. I connected it using the postgres jdbc driver and voila, TimestampZ fields are displayed in local Timezone in Tableau.
So my understanding is; this is somewhat possible with some changes in the Connector (and maybe in the jdbc driver as well). My first guess was that TimestampZ does not have a local - remote type mapping in the dialect file which results in it being interpreted as String. However; Presto's dialect file does not seem to be public so I can not confirm this. I was also not able to find dialect files that contain both Timestamp/TimestampZ to use as an example, PostgreSQL is not public, public ones do not seem to have TimestampZ type.
So if my approach is not wrong so far, here is the actual question: If I was to use Presto dialect as base, can I simply add a new local - remote type mapping under <format-column-definition> and expect it to work? Does dialect files support that sort of override behavior for that specific element, or do I have to start from scratch?
Thanks & sorry if my approach is totally wrong.

You can use <dialect name='TrinoDialect' base='PrestoDialect', putting your connector on top of Presto without knowing its full dialect.tdd.

Hi Xsgao;
I know a base Dialect can be extended, but if I am not gong to be able to override <format-column-definition> element in my extended dialect, it's no use. (There isn't much info on how this can be achieved, that's why opened the question. Maybe I should just try it at this point). If it doesn't work, I would then have to start from scratch, in which case PrestoDialect would help as an example.
Btw., I noticed you are working with the Starburst driver. Isn't it also the same over there? (Assuming you are extending the already existing PrestoDialect). TimestampZ -> converted to String in Tableau by default.

I am not gong to be able to override <format-column-definition> element in my extended dialect, it's no use
How did you get the conclusion? Did you try it?

Unfortunately, our connector also returns varchar for date/timestamp with time zone. But I see JDBC driver returns correct metadata, so I think this is a connector issue.

Hi Xsgao;
I didn't write "it's not going to work"  but "IF it's not going to work". I have no idea, I didn't try it. The reason why I opened the question was maybe somebody with more knowledge on the SDK could tell if it's going to work or not, saving me the hassle in case it's a dead end. (I don't have the dev. environment set up)

I think this is a connector issue.
I think so too, and there is actually a connector that handles both timestamp and timestamp with timezone correctly (or rather the way I expect) -> PostgresSQL Connector. But it's dialect file is not open.
My guess is that under the <format-column-definition>, both timestamp and timestampZ are mapped to Tableau internal DateTime type. And the rest is up to the implementation in the jdbc driver (Coercion of timestampZ to timestamp)

Anyway, it looks like I will have to try and see whether it works when I have the time.

Hi @soydan, connection to a Trino server from Tableau should use the Starburst Connector (please find the Starburst Enterprise by Starburst under Additional Connectors) and trino driver. The Presto Connector should only be used to connect to a PrestoDB server, using the prestodb driver. Can you try again with the Starburst Connector?
By design, in JDBC connections, timestamp with time zone values should be resolved in local time zone by Tableau, like what you observed with PosgreSQL. I tested with both combinations mentioned above and didn't notice any different behavior. Essentially we are using SimpleDateFormat to format the String outputted and it uses the default local time zone reported by the operating system. From my testing, the behavior of both drivers match this statement.
If you are still noticing unexpected behavior with the Starburst Connector, can you share some screenshots or logs of what you see so I can further assist? Thanks!

Closing the issue as no response after a week. Please open a new issue if there is more question.


Update benchmark tool to scrape metrics from JSON files

Following from recent changes of moving all metrics data from build-log.txt to individual JSON files.
Fun fact: There are literally just 6 godeps now! Turns out all the evil was in k8s.io/kubernetes/test/e2e/framework package which was importing the universe.
cc @wojtek-t @gmarek

And we deleted 1.5m lines. I can't really tell how happy I am about that:)

Some more stats to make you happier:

Size of the directory reduced from 69MB to 6.6MB
Compile time reduced from 44s to 8s
Time to run tests reduced from 3m50s to 2.5s (CPU time)

Moral: Importing k8s.io/kubernetes/test/e2e/framework can be harmful for your health.

One naming nit, lgtm otherwise.

Adding lgtm based on above comment.


Error running test

Hi, i just downloaded this boilerplate, and i get an error when i try to run npm test  see below
 ❯ npm test                                                                                [10:02:53]

><EMAIL_ADDRESS>test /Users/jb/Code/Traintracks/redux-easy-boilerplate
> karma start

Hash: 8344a6c0a9b3c44a5636
Version: webpack 1.12.9
Time: 8ms
webpack: bundle is now VALID.
webpack: bundle is now INVALID.
Hash: 9cac4424a294aa9f3f08
Version: webpack 1.12.9
Time: 2049ms
                      Asset    Size  Chunks             Chunk Names
test/reducers/items.spec.js  105 kB       0  [emitted]  test/reducers/items.spec.js
chunk    {0} test/reducers/items.spec.js (test/reducers/items.spec.js) 94.2 kB [rendered]
webpack: bundle is now VALID.
05 01 2016 10:02:57.092:INFO [karma]: Karma v0.13.18 server started at http://localhost:9876/
05 01 2016 10:02:57.101:INFO [launcher]: Starting browser Chrome
05 01 2016 10:02:57.903:INFO [Chrome 47.0.2526 (Mac OS X 10.11.2)]: Connected on socket 1bqGYsd3dwKGVN98AAAA with id 32182782
Chrome 47.0.2526 (Mac OS X 10.11.2) ERROR
  Uncaught TypeError: (0 , _typeof3.default) is not a function
  at /Users/jb/Code/Traintracks/redux-easy-boilerplate/src/test/reducers/items.spec.js:1328
Chrome 47.0.2526 (Mac OS X 10.11.2): Executed 0 of 0 ERROR (0.115 secs / 0 secs)
npm ERR! Test failed.  See above for more details.

any ideas what might cause this ? I have not modified the repository

This is Babel 5 to Babel 6 problem


How to open EPUB

This issue is a Question
Expected Behaviour
Open SDKLauncher-Android and be able to view an EPUB
Observed behaviour
Instead, it tells me that it cannot find any EPUBs at a certain location on the local storage (not SD card). I am unable to put files in that location as it is an illegal path.
Steps to reproduce

First, open SDKLauncher-Android
Then notice that it tells you to put EPUBs in /storage/emulated/0/epubtest which is an invalid path (since "0" is not a valid folder name)

Product

Native application (Readium SDK C++)

Official "launcher" sample
Android—many versions; pulled from 'develop', June 10th 2016: version bump to 0.24.0-alpha

Additional information
Here is my original post to the Readium Slack channel
Has anyone gotten SDKLauncher-Android working lately? I’ve tested on a couple of devices and it gives me the toast message:
"/storage/emulated/0/epubtest is empty, copy epub3 test file please.”
However, I cannot create a folder named “0” as that is an illegal filename. And I have tried putting symlinks from within /storage to the SD card but they are apparently not followed. I have also tried changing the path where it looks to absolute paths on the SD card but again, no dice. I also added an intent to AndroidManifest.xml to be able to open EPUB with SDKLauncher-Android but I must’ve done it wrong, as it crashes when I try that.

Daniel solved this! Thanks, Daniel!
EPUBs must be placed within the SD card's "epubtest" folder. On my device, the path is "/sdcard/epubtest" — not "/storage/emulated/0/epubtest" as it was saying.
As soon as I placed EPUBs within the epubtest folder of the SD card, everything worked fine!

I've been bitten by this as well a couple times in the past.
Could the toast text be changed to more accurately specify the folder location? Is it OK to change it to "/sdcard/epubtest" or is that not always correct?

Sounds reasonable to me.  I am OK with this change.

/storage/emulated/0/epubtest vs. /sdcard/epubtest
(same destination, different filesystem mount on some devices)
...the woes of Android FS, symbolic links, Java API etc.
but yes, I agree that the error message needs to help the user  / tester fix the problem.


test: add unit tests for useDimensions, useOutsideClick, usePrevious

@ana-oprea If I recall correctly, we backported this helpers to Volto itself, it would be great to have the tests in there too! Thanks for your contribution!

@ana-oprea btw, we need a Towncrier changelog.

@sneridagh added the Towncrier changelog.


pg.transform.flip takes no arguments

When I execute main.py I get an error. It seems that in texture.py, pg.transform.flip is suppose to return a texture flipped along x or y but this function apparently takes no keyword arguments.
Here's my console output (removed the path above):
pygame 2.0.1 (SDL 2.0.14, Python 3.9.1)
Hello from the pygame community. https://www.pygame.org/contribute.html
Unimplemented OBJ format statement 'Tf' on line '	Tf 1.0000 1.0000 1.0000'
Traceback (most recent call last):
  File "C:\3D-Graphics-Engine\main.py", line 75, in <module>
    app = GraphicsEngine()
  File "C:\3D-Graphics-Engine\main.py", line 40, in __init__
    self.mesh = Mesh(self)
  File "C:\3D-Graphics-Engine\mesh.py", line 9, in __init__
    self.texture = Texture(app)
  File "C:\3D-Graphics-Engine\texture.py", line 11, in __init__
    self.textures[0] = self.get_texture(path='textures/img.png')
  File "C:\3D-Graphics-Engine\texture.py", line 47, in get_texture
    texture = pg.transform.flip(texture, flip_x=False, flip_y=True)
TypeError: flip() takes no keyword arguments

Could you post the code where the error is occurring?
  File "C:\3D-Graphics-Engine\texture.py", line 47, in get_texture     texture = pg.transform.flip(texture, flip_x=False, flip_y=True)
Could be a bad pathway for the texture after it was loaded by Pygame


Can not list geo-redundant backup for Azure PostgreSQL server?

Hi,
We meet some issue with geo-redundant backup, more details as follows:
When we create the Postgresql server, for  Backup Redundancy Options, we choose geo-redundant backup.
After two days, we tried to create a new Postgresql server using backup, but the backups list does not include any  geo-redundant backup,  like this:

As the document said full backups occur weekly, differential backups occur twice a day, so why we can not get the geo-redundant backup?  Should we wait for it longer?
Do you have any idea about it?

Create a new one to follow up

Thanks for sharing the update.


String: added strreplace(..) method.

Thanks ! I will make minors changes to it (naming convention) =)


Executable prettier not found

Getting an "Executable 'prettier' not found" error though the hook seems like it's getting successfully installed, perhaps similar to https://github.com/pre-commit/pre-commit/issues/1516?
.pre-commit-config.yaml
- repo: https://github.com/pre-commit/mirrors-prettier
  rev: v2.6.0
  hooks:
    - id: prettier
      additional_dependencies:
        -<EMAIL_ADDRESS>
output:
[INFO] Initializing environment for https://github.com/pre-commit/mirrors-prettier.
[INFO] Initializing environment for<EMAIL_ADDRESS>[INFO] Installing environment for https://github.com/pre-commit/mirrors-prettier.
[INFO] Once installed this environment will be reused.
[INFO] This may take a few minutes...
prettier.................................................................Failed
- hook id: prettier
- exit code: 1

Executable `prettier` not found

Like the original issue, seems like it's installed correctly:
$ find ~/.cache/pre-commit/ -name prettier.js
/Users/shanexavier313/.cache/pre-commit//repohxvpdrte/bin/prettier.js
/Users/shanexavier313/.cache/pre-commit//repo3dsn_8t6/bin/prettier.js

please make sure to follow the readme: https://github.com/pre-commit/mirrors-prettier#using-prettier-with-pre-commit

oh i see, didnt realize you have to explicitly put prettier in additional_dependecies when using plugins. thank you


Improve scoreboard: handle if player leaves during scoreboard view (resend settings and stats), add "hasGuessed" indicator for each player

closed by 0481ae7f30eaee04fa8698e17ce307f4cea6fbf5 and 9217cc33e581d2eab24d386a78a8ab5dc1265c0a


Notebooks HTML: Setting the background-color property on html changes the whole notebook

Describe the bug
If you set the background-color for the html tag, it changes the background for the whole notebook.
<style>
  html {
    background-color: white;
  }
</style>

Please complete the following:
Which version of .NET Interactive are you using? (In a notebook, run the #!about magic command. ):

OS

[ ] Windows 11
[ ] Windows 10
[ x] macOS
[ ] Linux (Please specify distro)
[ ] iOS
[ ] Android

Browser

[ ] Chrome
[ x] Edge
[ ] Firefox
[ ] Safari

Frontend

[ x] Jupyter Notebook
[ ] Jupyter Lab
[ ] nteract
[ ] Visual Studio Code
[ ] Visual Studio Code Insiders
[ ] Visual Studio
[ ] Other (please specify)

Screenshots
https://user-images.githubusercontent.com/686963/191589817-ad8f0a94-bca2-493f-8c3a-5695627d7965.mp4

Created https://github.com/microsoft/vscode/issues/161515 for tracking this issue in core.


Enable Travis builds

Add builds for:

Linux/clang
Linux/gcc
macOS/clang
Windows/msvc

Ideally it might be convenient to build them separately with -m32 and across optimization levels, so that we find breaking changes as soon as possible.

Agree we'll want to add more dimensions for 32/64 bit and optimization level. But I think this is in a good place to submit now that we get coverage on different compilers and OSes:

Also nice-to-have: different architectures.

@asteinha thanks for the early feedback. All builds are now green. Please take another look and comment/approve?


WIP - Discussion about README template

I just start to group all the remarks I got thanks to contributors and after our meetings:
Examples

Add examples about filtering (PR on PHP SDK): indeed, filters are a demanding feature and not easy to handle. Other examples about custom search, in general, could be a good idea, especially for the SDK JS => we plan to remove the Examples section once all the examples are integrated to the main docs.
Add examples to use settings => same than above
Add examples about custom method relative to the SDK only? => see #27

Contributions

Add a contributors section?
Add a CONTRIBUTING.md -> related to this discussion.

Done in #33
The table of Contents
Having a TOC in a README is really useful but is a pain to maintain. The best way is to generate it automatically.
We could enforce the user to use (so to install) tool like doctoc and to run it before submitting it.
-> A script could check that the TOC is up-to-date for each PR.
-> in the README, the TOC could be surrounded by comments Do not change manually, use doctoc instead (for example).
Future!!
We should automatize PR on README to avoid opening manually a PR for each SDK for each change.

A collaborator section?

I think we should have a standard, project-wide way of listing contributors/collaborators. I've started a topic about it on our internal board.

Our READMEs now contain this different sections
What we expect about READMEs is described here: https://github.com/meilisearch/integration-guides/blob/main/guides/build-integration.md#2-readme

We should automatize PR on README to avoid opening manually a PR for each SDK for each change.

Done with meili-bot


Add DOI for scientific citation to the repository

First of all I'd like to thank you for your amazing work here with appleseed!
We are currently working on a research project in our Master Degree Program and decided to use appleseed as our rendering engine for synthetic spectral images. Although there are renderers like mitsuba that's major purpose is a scientific use we wanted to evaluate appleseed as an alternative because of it's widely adoption in known DCC's and to give students with a different background then CGI (The research project is about color science mostly worked on by students with a more cineastic/film background) the ability to jump in right away where the integration in blender or gaffer comes in really handy.
Due to this I'd like to request to make appleseed more easy to use in a scientific environment and add a DOI to the repository as described on the GitHub blog here:
https://github.blog/2014-05-14-improving-github-for-science/
I'm not sure if this only works for educational and scientific repositories only but it seems not to be a big deal to add this badge.
I'd love to hear your options on this and thanks in advance
Yannic

Hi Yannic,
thanks for the suggestion and kind words. Citing appleseed is already possible (see example of a BibTeX entry for R below) but having a DOI is definitely an improvement worth considering.
You should join our Discord server to discuss this with @dictoon
On Discord you will get also real-time updates on appleseed development, our roadmap and access to regular test builds of our plugins for Max, Maya & Blender.

To cite R in publications, use
@Manual{,
title        = {R: A Language and Environment for Statistical
Computing},
author       = {{R Core Team}},
organization = {R Foundation for Statistical Computing},
address      = {Vienna, Austria},
year         = YEAR,
url          = {https://www.R-project.org}
}

Hi @yannci,
Thanks for reaching out!
One of the untold goal of appleseed is to be a great learning, teaching and experimentation platform.
I've used it a few times as a teaching support when giving master classes at Ludwigsburg's Filmakademie: it was very useful to explain the characteristics and limits of various rendering algorithms (path tracing without and with next event estimation, light tracing, etc.)
I'll look into creating a DOI for appleseed. It makes a lot of sense.
Please keep us informed on how things go with using appleseed in your master degree program. If you need anything or encounter any issue, please let us know here or on Discord, our team will be most happy to help.
Cheers!

I'm in the process of publishing our latest official release (2.0.0-beta) and our upcoming release (2.1.0-beta) to Zenodo.
One point that is unclear to me at this time is which contributors to include as software author. I've posted a question to Stack Exchange Academia:
https://academia.stackexchange.com/questions/135625/
@yannci You undoubtly has more experience than me on the subject, I would love to hear your opinion on the topic.

Here is a tentative publication of the appleseed 2.0.0-beta release to Zenodo: https://zenodo.org/record/3384658
Feedback welcome!

@Mango-3 sorry for the late response I was busy the last few days. Thanks for giving the R example. I was already aware of the "@misc" entry in BibTex but with some kind of literature software as Citavi it's easy to use the DOI. And even the introduction with Zenodo gives you the possibility to export directly as BibTex. Nonetheless thanks a lot for this hint! Hopefully it will be useful for someone in the future.
@dictoon Thanks a lot for adding this so fast! Regarding my expertise in citing I'm not really more experienced then you I guess. I'm used to cite publications but no software until know. I think the suggestions on Stack Exchange are the best way to set this up as you already did.
Currently or project just started and my part was evaluating the tools with it's possibilities and make a decision about which to use but appleseed will be the backbone for creating synthetic images.
Thanks for looking into this and all the effort you put into appleseed!

DOI for appleseed 2.0.0-beta: https://zenodo.org/record/3384658
DOI for appleseed 2.1.0-beta: https://zenodo.org/record/3456967


Should timing badges take into account beforeEach/afterEach?

My beforeEach functions are pretty slow, and sometimes even dominate test time. (I set up test fixture data and initialize an Ember app.) But the little timing badges that show up in the browser (above 50ms or so) do not include this time, they only seem to measure the time of the test functions themselves.
I'm thinking that it would be sensible for the badges to include the beforeEach/afterEach time.
(Perhaps there are also other parts where these timings are used, like timeouts -- I'm fairly new to mocha.)
What do you think?

Looks like this was never completed:
$ cat example.js
beforeEach(function(done) {
  setTimeout(done, 180);
});

it('foo', function(done) {
  setTimeout(done, 100);
});

it('bar', function(done) {
  done();
});

$ ./bin/mocha --reporter spec example.js

  ✓ foo (101ms)
  ✓ bar

  2 passing (468ms)

I could come up with a PR for this. The resulting output would be:
$ ./bin/mocha --reporter spec example.js

  ✓ foo (281ms)
  ✓ bar (181ms)

  2 passing (468ms)

$ ./bin/mocha --reporter --verbose spec example.js

    beforeEach (181ms)
  ✓ foo (281ms)
    beforeEach (181ms)
  ✓ bar (181ms)

  2 passing (468ms)

To clarify, I'd probably keep the current behavior of having timeouts apply to contexts, and not aggregated test execution time.

@danielstjules It would be also be nice to show the name of the hook, for when you have multiple ones.

@danielstjules go for it! :)

@danielstjules would love this!

cc @Nokel81; you might want to consider this when looking at the stats gathering.

Great idea, the aggregater should have access to this information so reporters will be able to start using it

@boneskull @Nokel81 I created a PR https://github.com/mochajs/mocha/pull/3776 (based on https://github.com/mochajs/mocha/pull/2244) which introduces an option --time-setup to include the duration of beforeEach hooks in the duration of each test. I have found this useful for optimizing tests in my own projects.

bump, seeing that the pr is still open, is it still being worked on? what are the alternatives?

Would be awesome to get #3776 merged, it's exactly the solution I need. My use case is CircleCI test splitting which uses the timing data from the junit reporter, which is completely off if it doesn't include beforeEach.

I ran into this and was sadden to see that the PR #3776 is still outstanding, so I set out to see if there was some way I could hack this behaviour into current MochaJS, and this is what I came up with:
let start = performance.now()
export const mochaHooks = {
    beforeEach: async function () {
        const currentTest = this.currentTest
        const originalRun = currentTest.run
        currentTest.run = function (fn) {
            originalRun.call(currentTest, function (...args) {
                const end = performance.now()
                currentTest.duration = Math.round(end - start)
                start = end
                fn(...args)
            })
        }
    }
}

It's put into a --require file which adds a global hook.
I have made it such that start is set immediately and updated after each test, this ensures all time spent between tests are included, so any before / beforeEach / after / afterEach etc. is counted in the duration.
It's kind of hackish, but works.


Create .env

Created an .env file

You may want to delete this PR, privatise your fork and regenerate your API key, as you have now leaked your API key publicly.

@Shotfella  you should not expose your key here. Please delete this key and generate the new one.


RDKit Mol doesn't preserve atom properties when pickled; impacts ExplicitMoleculeComponent and subclasses

Although we typically serialize GufeTokenizables to dict, keyed_dict, or KeyedChain forms turned to JSON, it can also be convenient to pickle these objects in certain cases. When using multiprocessing, for example, GufeTokenizables passed as arguments to functions executed on other processes are typically pickled/unpickled as the serialization approach.
This presents an issue for ExplicitMoleculeComponents: RDKit Mol objects do not by default include atom properties when pickled (https://github.com/rdkit/rdkit/issues/6573#issuecomment-1781734093). This behavior causes issues especially for preserving partial charges, since we use RDKit Mol properties for holding on to these.
It's possible to change this behavior globally for RDKit with:
from rdkit import Chem
Chem.SetDefaultPickleProperties(Chem.PropertyPickleOptions.AllProps)

Should we set this within gufe so as to avoid this issue across the board, or will this have undesirable consequences?

Thanks for opening this @dotsdl ! That is indeed quite interesting, I've put it on the tracker for review.

I'll draft a PR for this, including a test illustrating the behavior we are trying to solution for.


Title, h1, and returnbutton class updates

changed the title of the website and the h1. Added a returnButton class back so the script.js reads it properly

code looks good. approved.


Some bugs in readme

Hi, I find some problems in your readme, which may confuse us.

In the "capability config" and code example", the item ""n_enemies": 5 " shouldn't be under strat_positions, it is should be closed to "n_unit".
it imports from smac in the example code, you should import from smacv2?

Besides, which version of pettingzoo do you use? I cannot run the example code of pettingzoo, which raises error "ImportError: cannot import name 'from_parallel_wrapper' from 'pettingzoo.utils.conversions'".

Thanks very much for the feedback on the readme, that's very useful! I will make some edits to that tomorrow.
On PettingZoo, I haven't tested the pettingzoo wrapper so currently do not know whether it works. Let me know if it breaks and I will have a quick look at getting it to work -- it shouldn't be too bad hopefully. @mingfeisun in another thread says 1.8.1 should be the version of pettingzoo that is used.

Thanks. The 1.8.1 works for me.


I'd like to switch to logo-white.png when I click the button for dark mode.
What is the best way to do this?

You can use the useColorMode hook to retrieve the active color mode and then set the image based on the value.
import { useColorMode } from "@reflexjs/gatsby-theme-core"

export const Logo = ({ ...props }) => {
  const [colorMode, setColorMode] = useColorMode()
  return (

      <img src={`logo-${colorMode === "default" ? "white" : "black"}`} alt="Logo" />

  )
}

That didn't exactly work so I changed the code in the  tag to this:

Works fine now. Thanks!


⚠ Bofrost.at has degraded performance

In b20bcac, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1305 ms

Resolved: Bofrost.at performance has improved in b0cddd0.


feat(PUPIL-240)!: Serve images directly from Cloudinary

🚨 BREAKING CHANGE: adds NEXT_PUBLIC_OAK_ASSETS_PATH which is required by next-cloudinary, also adds next-cloudinary as a peer dependency to keep the bundle size down.
Until now images were always proxied by the Next server where they are
resized on the fly. There is a considerable delay while OWA on Netlify pulls the full-size image
from Cloudinary before it can resize and serve it. This is not necessary for
images that are already in Cloudinary since that is exactly what Cloudinary is for.

@kimon-satan
All up and running now, you were correct it needed adding to main.ts

I've added a test that will skip the optimisations if the file ends in .svg — so it will serve SVGs up directly, this includes icons from the assets account and any quiz images that happen to be SVGs. The f_auto transform (which we could remove) is Cloudinary's way of trying to be smart and picking the best format for the asset — in most cases it will serve up a webp unless the browser is old. I would have thought leaving SVGs as is would make sense but there is probably some business reason they do this.
It probably makes sense to only pass quiz images through this optimisation process since they're most likely to huge and we can be sure that app assets and icons are already well optimised. We can tweak the config to point at the quiz assets Cloudinary account and only those images will receive the treatment.

How does that sound?

@kimon-satan i've changed my approach which makes the change a little less disruptive to OakImage — i've gone ahead and created a special OakCloudinaryImage which can be used to opt-in to Cloudinary image processing.
This feels better to me and supports the multiple Cloudinary instance use-case that we have.


Vulnerability roundup 111: seafile-server-8.0.8: 1 advisory [5.9]

search, files

[ ] CVE-2021-43820 CVSSv3=5.9 (nixos-21.11)

CVE details
CVE-2021-43820
Seafile is an open source cloud storage system. A sync token is used in Seafile file syncing protocol to authorize access to library data. To improve performance, the token is cached in memory in seaf-server. Upon receiving a token from sync client or SeaDrive client, the server checks whether the token exist in the cache. However, if the token exists in cache, the server doesn't check whether it's associated with the specific library in the URL. This vulnerability makes it possible to use any valid sync token to access data from any known library. Note that the attacker has to first find out the ID of a library which it has no access to. The library ID is a random UUID, which is not possible to be guessed. There are no workarounds for this issue.

Scanned versions: nixos-21.11: 2128d0aa28e.
Cc @greizgh
Cc @schmittlauch

I'm not sure to understand this advisory: the referenced patch has been merged in v8.0.8, which is the current version on nixos-21.11 (updated in #155927).
The CVE report states that the vulnerability is present in community edition up to excluding v8.0.8.

I think the CVE is inaccurate. Closing.


CI: Enable full testing for F429ZI and Ublox EVK Odin W2

Summary of changes

[] I confirm this contribution is my own and I agree to license it with Apache 2.0.
[] I confirm the moderators may change the PR before merging it in.
For new board enablements only:
[] I confirm the board is Mbed Enabled and passes the Mbed Enabled test set.
[] I confirm the contribution has been tested properly and the tests results for TESTS are attached.
[] I confirm mbed-os.lib and mbed-cloud-client.lib hashes or the content in folders mbed-os and mbed-cloud-client were not modified in order to pass the tests.

Maintainers of this repository update the Mbed OS and Client hashes.
Please report any issues through issues in relevant repositories.

run-ci

Test run: FAILED

Test summary:
Executed: 48
Failed: 0
Skipped: 5
Errors: 18
Failed test cases:
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-GCC_ARM-TCP: NUCLEO_F429ZI-GCC_ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
NUCLEO_F429ZI-ARM-TCP: NUCLEO_F429ZI-ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
UBLOX_EVK_ODIN_W2-GCC_ARM-TCP: UBLOX_EVK_ODIN_W2-GCC_ARM-TCP.dev-client-tests - [test setup failure]
Build artifacts
posted-by-tag: https://jenkins-client.isgtesting.com/job/mbed-os-example-pelion/


Swap set coeff argument order

Am I going crazy or are these in the wrong order? doc

I published a version with this fix.


feat(vite-plugin-nitro): add support for XML content in API routes

Add the ability to set content-type as XJML in server routes and to have SSG correctly pre-render the data
PR Checklist
Please check if your PR fulfills the following requirements:

[x] The commit message follows our guidelines: https://github.com/analogjs/analog/blob/main/CONTRIBUTING.md#-commit-message-guidelines
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

PR Type
What kind of change does this PR introduce?

[ ] Bugfix
[x] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Build related changes
[ ] CI related changes
[ ] Documentation content changes
[ ] Other... Please describe:

Which package are you modifying?

[ ] vite-plugin-angular
[x] vite-plugin-nitro
[ ] astro-angular
[ ] create-analog
[ ] router
[ ] platform
[ ] content
[ ] nx-plugin
[ ] trpc

What is the current behavior?
When defining an API route with a content-type other than applicaton/json, nitro interprets all responses as text/html and renders a .html document for the data. If you would like to serve up something like XML for an RSS feed, this doesn't work.
What is the new behavior?
If you set the headers to content-type: text/xml (or anything non-json) it re-proxies the request to allow nitro to interpret the result as intended.
Note: This is a bit wasteful to re-proxy the request, but I was unable to bet nitro to be happy with any other approach. I am totally willing to try other approaches, but this was the most consistent way I could get the desired behavior
Does this PR introduce a breaking change?

[ ] Yes
[x] No

Other information
[optional] What gif best describes this PR or how it makes you feel?

Nice! What about making it more straightforward and checking if the reqUrl ends in .xml or the event.node.req headers for the content-type include application/json?
If it does, skip over the $fetch and go to the proxyRequest.

Nice! What about making it more straightforward and checking if the reqUrl ends in .xml or the event.node.req headers for the content-type include application/json?
If it does, skip over the $fetch and go to the proxyRequest.

I can totally check for the .xml ending. There is not content-type for  the request in this case.
I'll make that change to the PR to keep it a bit more targeted and simple .The e2e tests should still apply so I'll run those to make sure it still passes.

PR updated to keep it a bit more targeted and simple. Only looking for .xml as the ending of the request URL.

Great. For context, the reason the GET requests don't get forwarded to the proxyRequest is that the response isn't correct and it breaks the JSON response. Needs further investigation there though outside of this PR.

Great. For context, the reason the GET requests don't get forwarded to the proxyRequest is that the response isn't correct and it breaks the JSON response. Needs further investigation there though outside of this PR.

Thanks for the context! With that in mind, then yes, this is way safer just checking .xml for the route so it wouldn't break any other expectations!

Whoops, sorry for the spam with updates. Thought I would take the docs changes through the UI but ended up creating a lot of noise. Sorry!
😬

@allcontributors add @justinrassier for code


Add support for Symlinks

Currently symlinks are not supported because only inodes having extent trees are supported. According to Ext4 Disk Layout for symlinks, if the symlink contains a path shorter than 60 bytes then inode.i_block (Inode.IBlock in this lib) is used to store the path (which is usually the case). When that happens, the inode is not using extents and hence InodeFlagExtents is not set. Hence, this library refuses to create the symlink's inode. (Reference)

The issue persists on this repo. I solve it in ayushr2/go-ext4#3.

Feel free to open a PR here, then.


build fail-what are the right versions?

I just cloned and tried build. I am getting following error. My java version is "1.8.0_191" and gradle version "5.2.1". Are these the right versions to build and use? Or there is another workaround I need to follow?

You should use the gradle wrapper (./gradlew) rather than a gradle install.

yup..got it..thanks


Add arbitrary fields to generated Go structs

What do you want to change?
I wanted to try out Service Weaver with sqlc since sqlc is such a joy to use, however I ran into a slight issue. Service Weaver requires you to implement the encoding.BinaryMarshaler and encoding.BinaryUnmarshaler interfaces. There is a shortcut where you could embed weaver.AutoMarshal into the struct. I was thinking that it might be a nice enhancement to make this use-case a bit easier to handle so I won't have to write a bunch of functions for generated structs.
Basically, I was envisioning something like:
gen:
  go:
    emit_embeds:
      - weaver.AutoMarshal

Alternatively, is this something that could be accomplished with plugins?
Thanks so much!
What database engines need to be changed?
No response
What programming language backends need to be changed?
Go

Interesting idea. We'd re-use the override go_type parsing logic I think, and we'd need to add an import to the output.
I think the plugin idea is a good starting point though. We just released sqlc-gen-go which is the sqlc built-in Go codegen package extracted for use as an external plugin. It should be relatively straightforward for you to fork and modify that plugin to see if this approach works. If it's not straightforward then let us know so that we can improve our documentation.


msteams:// Deep linking is not working in New Teams Client

With the new MS Teams update, deep linking is one identified feature that has stopped working.  Deep Link is not supported on the new version of Teams client. This was not called out in the PDF received.

Below is the URL I'm using to deep link a chat with the teams desktop client.
msteams://l/conversations/<CHAT_THREAD_ID>?ctx=chat

@sainagarjunareddy-tadiparthi - To create a deeplink to chat, could you please follow the supported format that is documented here https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-link-teams#deep-link-to-start-a-new-chat. Please let us know if you face any issue with these deeplinks.

Hi @Meghana-MSFT,
Thank you for your prompt reply.
Our scenario involves launching the Teams app directly without displaying the launcher page. Is there a way to achieve this? We have been using the "msteams://l/conversations/<CHAT_THREAD_ID>?ctx=chat" protocol for a while, and while it works with the older client, it appears to no longer be supported with the new Teams interface enabled.

The problem with using the msteams: protocol directly is that if the user doesn't have Teams installed, the protocol launch would most likely fail (at least it would on Windows/Mac). The launcher provides a way for the customer to acquire the Teams Client if they don't have it installed. Hence it is not recommended to use the msteams: protocol directly. Please use the documented format for deeplink.

@Meghana-MSFT What if the deeplink is another client, such as zoom: zoomus://zoom.us/router?page=phone. The old version supports opening this kind of deeplink, but the new version no longer supports it.

Currently only deeplinks of the documented format (staring with https://teams.microsoft.com) are supported.

@Meghana-MSFT The docs has a section about Deep links to navigate to chat messages but our case is to open a chat based on the chatId. Is there a way for us to open the chat based on chatId as we don't have a message Id to navigate to.

We checked by created the Deep link to navigate to chat messages without message id and it doesn't work. As per the documented format, message Id is required to navigate to chat messages.

Currently only deeplinks of the documented format (staring with https://teams.microsoft.com) are supported.

kinda sucks for a Power App embedded in a Teams chat.  We have one with a chat button that when clicked opens up a chat with the chosen user (format is<EMAIL_ADDRESS>).
In new Teams this does nothing.  If we use https instead of msteams it opens a tab in a browser instead of going straight to the chat within Teams.  This functions, but is pretty clunky, and breaks the use of the Back button in Teams to go from the chat back to the embedded Power App.
See https://github.com/MicrosoftDocs/powerapps-docs/blob/main/powerapps-docs/teams/integrate-calls-and-meetings.md for code to repro, taking note of "If the user is accessing Teams using a web browser, this will launch the call window in the browser itself because of https:// protocol identifier. If the user is accessing Teams using the Teams desktop or mobile app, then it launches the call window in the Teams app itself because of msteams:// instead."  As it stands, this is broken

Hi @MamiyaOtaru @sainagarjunareddy-tadiparthi,
I've had the same problem. here's what worked for me:

msteams://teams.microsoft.com/l/chat... doesn't work anymore
Removed url base from the old version
Also changed the protocol's // to single /
With this changes It worked again.

For instance a chat message custom url scheme :

msteams:/l/chat/0/0?users={usermail} worked for me

It appears that on the web and desktop app the address works as:
https://teams.microsoft.com/l/chat/0**/0**?users
But on the android app the address works as:
https://teams.microsoft.com/l/chat/0?users

My issue is slightly different to the above. I can get deep-link to work in Teams desktop v2, but not in Team web v2.
In classic Teams web, you can deep-link into any chat like this:
https://teams.microsoft.com/_#/conversations/19:df08f75d-1fed-xxxxxx-a587-xxxxxxxxxxxxxxxx-9fa4-4133-a10c-xxxxxxxxx@unq.gbl.spaces?ctx=chat
But I get this when I try to do it while I'm using Teams web v2:

I've tried a couple of things but I can't get deep-linking to work. It's kinda annoying because Teams v2 deals with notifications better. When you grant teams.microsoft.com Notification permission to the browser, even when your browser is minimized, you'll still get notification banner popup and you'll hear the notification sound as well. However, classic Teams web only shows notification banner but no sound. HOWEVER, if you do not grant Notification permission, then Teams web classic will show notification banner AND sound, but only if the browser window is in foreground and Teams web classic tab is in focus. So ideally, I want to use the new Teams web v2, but of course deep-linking isn't working.
It's like both versions have their pros and cons. Why can't things just work and be consistent?

To create a deeplink to chat, could you please follow the supported format that is documented here https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-link-teams. Please let us know if you face any issue with these deeplinks.

Hi @MamiyaOtaru @sainagarjunareddy-tadiparthi, I've had the same problem. here's what worked for me:

msteams://teams.microsoft.com/l/chat... doesn't work anymore
Removed url base from the old version
Also changed the protocol's // to single /
With this changes It worked again.

For instance a chat message custom url scheme :

msteams:/l/chat/0/0?users={usermail} worked for me

Facing this same issue for URI links to channel file tabs too.  https://github.com/MicrosoftDocs/msteams-docs/issues/9267#issuecomment-1958569727
In old teams replacing https:// with the msteams:// URI protocol allows for external app links directly to the files tab of a channel:
msteams://teams.microsoft.com/l/entity/3ed5b337-c2c9-4d5d-b7b4-84ff09a8fc1c/FileBrowserTabApp?context=%7B%22channelId%22%3A%22<CHANNEL_ID>%22%7D
In new teams there is a bug where only the following URI formatting works for external apps link directly to the files tab of a channel:
msteams:/l/entity/3ed5b337-c2c9-4d5d-b7b4-84ff09a8fc1c/FileBrowserTabApp?context=%7B%22channelId%22%3A%22<CHANNEL_ID>%22%7D

Hi @MamiyaOtaru @sainagarjunareddy-tadiparthi, I've had the same problem. here's what worked for me:

msteams://teams.microsoft.com/l/chat... doesn't work anymore
Removed url base from the old version
Also changed the protocol's // to single /
With this changes It worked again.

For instance a chat message custom url scheme :

msteams:/l/chat/0/0?users={usermail} worked for me

Facing this same issue for URI links to channel file tabs too. #9267 (comment)
In old teams replacing https:// with the msteams:// URI protocol allows for external app links directly to the files tab of a channel: msteams://teams.microsoft.com/l/entity/3ed5b337-c2c9-4d5d-b7b4-84ff09a8fc1c/FileBrowserTabApp?context=%7B%22channelId%22%3A%22<CHANNEL_ID>%22%7D
In new teams there is a bug where only the following URI formatting works for external apps link directly to the files tab of a channel: msteams:/l/entity/3ed5b337-c2c9-4d5d-b7b4-84ff09a8fc1c/FileBrowserTabApp?context=%7B%22channelId%22%3A%22<CHANNEL_ID>%22%7D

It should work with just msteams, like this:
msteams:https://teams.microsoft.com/l/message/

It is not recommended to use the msteams: protocol directly.  Ref: https://github.com/MicrosoftDocs/msteams-docs/issues/9802#issuecomment-1794514555

So what about Teams v2 deep linking?

@xperiandri - We should use the documented formats for Teams v2 as well. Please raise a different issue if you are facing any issue.

Could you point me to the documentation? I cannot find any deep linking documentation for the Teams V2.

Please refer this deep linking documentation https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-links.

@Meghana-MSFT have you tried using the solution you provided?
So from your link I navigate down the next ToC item https://learn.microsoft.com/en-us/microsoftteams/platform/concepts/build-and-test/deep-link-application?tabs=teamsjs-v2#configure-deep-link-manually-using-your-app-id
From there I see https://teams.microsoft.com/l/app/<your-app-id>?tenantId=<tenantId>
I try that and it does not work with Teams v2

We tried this with below deeplink and it is working fine in both new Teams web & Desktop.
https://teams.microsoft.com/l/app/1542629c-01b3-4a6d-8f76-1938b779e48d?tenantId=4ad59956-0f88-4b88-a9d0-570b6eb4e66b
https://github.com/MicrosoftDocs/msteams-docs/assets/81138249/a4e1356f-abec-4f9c-b4b1-2ddefd7bd3d3

Indeed, now it works! Thanks!


Add ability to change default DLS parameter substitution behavior

Currently, if DLS contains a parameter that is not quoted and is not defined anywhere, i get this error:
Unrecognized token '$': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
This is happening, because replaceProperties method replaces only defined parameters, but does nothing to at least replace undefined ones with ''. This doesn't result in error if all the parameters are quoted, because even though they are not being replaced, the JSON structure still stays syntactically correct. But if there is at least one unquoted parameter, I get this error.
For example, if I have this role configuration:
{
  "index_permissions": [
    {
      ...
      "dls": "{\"terms\":{\"arr\":[${attr.jwt.array}]}}",
      ...
    }
  ],
  ...
}

And JWT payload looks like:
{
  "array": "\"1\", \"2\", \"3\"",
}

Then everything works correctly. But if for some reason I don't define this array field in JWT payload, I get the error described above.
I think there should be an option to tweak this behavior:

do nothing to undefined parameters (default)
replace undefined parameters with ''
throw an exception if undefined parameters are detected

I think offering options to tweak this is confusing for the users. However, this error message
Unrecognized token '$': was expecting (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
is not really reflecting the root cause. Throwing an exception should be a better solution.

[Triage] This request remains relevant. Error/exception message should be swapped to be more relevant. Tagging as "help wanted" and "good first issue."


Q: how to automatically detect platform_tag?

Question 1:
Currently, when I built wheel on Linux, platform tag is something like linux_x86_64
How to ensure that it detect current glibc version and set platform tag in manylinix_x_y_arch format?
I don't want to use auditwheel for it, because it's an extra step and not user friendly.
Question 2:
how to specify that my project does not contain Python extension and ensure py3-none is used instead of cp310-cp310
Question 3:
How to install several license files / custom license to the folder dist-info?

For questions 1 and 2 I managed to partially WA the issue with:
[tool.py-build-cmake.cross]
implementation = "py"
version = "3"
abi = "none"
arch = "manylinux_2_31_x86_64"
toolchain_file = "cmake/native.cmake"

with empty cmake/native.cmake.
But I still have to hardcode manylinux_2_31_x86_64 which can be different depending on glibc version of specific Linux OS

Question 1
I believe there are three common scenarios here:

You (or a user) are building packages from source locally. In this case, py-build-cmake simply uses the current interpreter's platform tag (as provided by distlib, e.g. linux_x86_64). This is okay for local packages, but these packages should never be uploaded to PyPI.
You're building a package for distribution on PyPI. This should really only be done in a CI/CD workflow, where you use standard tools such as cibuildwheel, which will process your package using auditwheel for you. This is necessary to make sure you don't upload incompatible packages with broken dependencies. Since this only happens in a CI workflow, you don't have to worry about user friendliness.
You're cross-compiling. Here, you should know the glibc version of the toolchain you're using, and you can indeed use the cross.arch tag for this purpose. (In fact, you cannot even use auditwheel in this case.) If you use an appropriate toolchain and you handle dependencies carefully, these packages can also be uploaded to PyPI.

I'm open to adding an arch option to native builds, but IMHO, py-build-cmake should not try to deduce the glibc version automatically, because A. this is unnecessary for local builds, and B. it may result in people uploading these local wheels to PyPI by accident.
Question 2
Using the py3-none tags is not yet supported by the stable release. In the current pre-release I'm working on, you can set python_abi = 'none' in your [tool.py-build-cmake.cmake] config, see https://github.com/tttapa/py-build-cmake/blob/rework-0.2.0/docs/Config.md.
Question 3
You should be able to simply install them using an install(FILES ...) command in your CMakeLists.txt. For instance:
install(FILES LICENSE.custom
        EXCLUDE_FROM_ALL
        COMPONENT python_modules
        DESTINATION "${PY_BUILD_CMAKE_PACKAGE_NAME}-${PY_BUILD_CMAKE_PACKAGE_VERSION}.dist-info")

I'll have a more detailed look at this later this week, I'll need to see how other backends such as setuptools handle platform/architecture tags.
To answer your second question, I believe that the correct syntax would be:
[build-system]
requires = [
    "py-build-cmake@git+https://github.com/tttapa/py-build-cmake@sha1-hash",
]
build-backend = "py_build_cmake.build"

Since the development branches are by definition unstable, I'd strongly recommend referencing a specific commit rather than a branch name.
Case in point, I've created a new tools.py-build-cmake.wheel section, and moved the python_abi option to it, in preparation to maybe adding options like arch to it in the future: https://github.com/tttapa/py-build-cmake/commit/dc21bfeb206279fb348a056da76bb6faf551d4be

Hi @tttapa
Maybe the better idea is to allow to call auditwheel during py-build-cmake build process? So, it will automatically fix wheel to reflect actual platform.