Ambiguous definition of Micro URI with ID Remote

In the URI Spec, the micro encoding of a Remote ID URI is shown as containing two fields: an 8-bit ID_LEN followed by a variable length UAUTHORITY_ID. An annotation is provided on the UAUTHORITY_ID reading (1=256 bytes).
This (1=256 bytes) implies that the allowable size range for the ID is from 1 to 256 inclusive. Since the ID_LEN is 8-bits, it follows that its expected to store id.size() - 1 such that an ID with a single byte would be represented by a ID_LEN of 0. This is necessary if we read the allowable size range as inclusive of 256 as that value cannot be represented in an 8-bit unsigned integer.
However, Table 3 states that the requirements for ID_LEN are that it "MUST be greater than 0", implying that the actual range is 1 to 255 inclusive, with an ID_LEN value of 0 being an invalid value. That same table defines UAUTHORITY_ID as being "8-2040 bits" (2040 bits == 255 bytes), supporting this interpretation.
To remove the ambiguity, either the diagram in 4.2.2 should be updated to more clearly state the actual size range of UAUTHORITY_ID, or Table 3 should be updated to allow for up to 2048 bits in the ID while removing the language that a length of zero is disallowed.

The (1=256 bytes) is what's throwing you from this table, right?
 0                   1                   2                   3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  UP_VERSION   |      TYPE     |           URESOURCE_ID        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        UENTITY_ID             |  UE_VERSION   |   UNUSED      |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    ID_LEN     |        UAUTHORITY_ID (1=256 bytes)  ...       |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

I agree it conflicts with the other pieces of information in that section of the spec. My guess is that the UAUTHORITY_ID is intended to be [1, 255] in length.
In up-rust we comply with the spec:

by having a set of validate_micro_form() functions for UAuthority, UEntity, UResource.
In particular the one for UAuthority checks the size is [1, 255].

Yes, that's the bit that is causing the conflict. I've been working to those diagrams, and from that standpoint it makes sense to use the full range of ID_LEN with the max UAUTHORITY_ID having 256 bytes. It's never valid to have zero bytes in the ID, so there isn't a reason to have a micro encoding that can represent an empty ID (if that were to change, we would presumably bump UP_VERSION).
However, if up-rust has already implemented this as [1, 255], then up-cpp can follow that. The spec should probably be updated so that table doesn't conflict with the earlier text.

Hi @gregmedd you are right the limit is 1-255, can you push a fix to update the document (to correct this)? Thank you!!

We are phasing out micro URI so this issue will be closed


Do not use pipenv for packages specified in tox.ini

I've been trying to convert one of my Django apps to use pipenv and I'm hitting issues with tox because, as I switch to it, I lose the ability for tox to pick up the app's dependencies which were previously in setup.cfg, setup.py or requirements.txt.
I tried this plugin hoping it would help, and maybe I'm misunderstanding what problem it's trying to solves, so if I am, forgive this ticket, though there is still an unsolved problem then.
Here's a typical Django app using tox and pipenv:

Dependencies for the project itself are defined in Pipfile
A lockfile is distributed alongside the Pipfile
tox.ini will look something like this:

[tox]
skipsdist = True
envlist = py36-django{20,master}, flake8, mypy

[testenv]
commands = pytest --showlocals {posargs}
deps =
	django20: Django>=2.0,<2.1
	djangomaster: https://github.com/django/django/archive/master.tar.gz
	pytest
	pytest-django
	coveralls

[testenv:flake8]
skip_install = True
commands = flake8
deps =
	flake8
	flake8-isort
	flake8-quotes

[testenv:mypy]
commands = mypy --ignore-missing-imports
deps =
	mypy

Now there's a fundamental conflict between tox and pipenv here. pipenv will install what's in the production lockfile. tox will attempt to install django 2.0, then django 2.1, django master, etc. tox will also install flake8 and mypy for the other environments, which will add them to the Pipfile and the lockfile. The --skip-lock argument to pipenv will prevent the lockfile from being updated at least, but they still shouldn't be added to the pipfile.
Fundamentally, all pipenv does is call pip and update the pipfile/lockfile accordingly. We want pipenv to create the environment, but not to install the packages provided by tox otherwise you will end up with modified pipfiles.
So my suggestion is something like this:

Call pipenv to create the initial virtualenv (including the packages) unless skip_install = True.
Afterwards, let tox use pip as it normally would to install the extra packages specified in tox deps.

Does that make sense, or am I completely off the mark?

Seconded. I'm having this issue as well. I'm leery of tox doing something that will change the Pipfile and Pipfile.lock.

This actually causes an issue with my tox.ini because pipenv does not seem to understand the syntax that is being passed to it:
deps =
    django-111: Django>=1.11,<1.12
    django-20: Django>=2.0,<2.1

So ideally, pip should have an argument to install from a pipfile, just like it has -r to install from a requirements.txt.
Seeing as tox-pipenv looks unmaintained right now, I've been thinking about hooking into tox with like a tox-pipfile plugin, which instead of going the route that tox-pipenv takes, simply allows getting a list of deps from a Pipfile.
It'd look something like this:
deps =
	-p{toxinidir}/Pipfile
	pytest
	pytest-mock
pipfile_use_develop = False  # Default True

hi @jleclanche I'm going through the issues now and trying to understand this one. Pipenv has changed a lot since this plugin was written, namely in the way it now plays nicely inside virtualenvironments.
Thanks for raising the issue

Hi,
Lots of ideas in this discussion, I'm trying to whittle them down into use cases.

When adding extra dependencies to deps in tox.ini you don't want those to be added to the root Pipfile or Pipfile.lock since they're only used for the testing process from tox, e.g. coverage tools, pytest etc.

I'm not clear why you would have Django specified in Tox, are you testing multiple versions of Django from Tox?

are you testing multiple versions of Django from Tox?

Yup that's a very common pattern. Example: https://github.com/dj-stripe/dj-stripe/blob/master/tox.ini

@jleclanche thanks, can you please help me come up with a test case that I can build to demonstrate the issue you're having?
This is the existing process:

The install stage calls {virtualenvpython} -m pipenv --python {python} the ENV for PIPENV_VIRTUALENV is set to the venv for the tox stage, e.g. .tox/py36
If dependencies are in deps, then install-deps stage calls {virtualenvpython} -m pipenv install --dev {package}
pipenv graph is run during the runenvreport stage
the test stage runs {virtualenvpython} -m pipenv run {test command}

The tox.ini displayed in the original comment should reproduce the issue:

Four unique environments
Two test ones, with their own dependencies each
Two "production" ones, on different versions of Django each

It's a pretty standard tox.ini among the Django community I believe.

ok, able to repro pretty easily. Just need to setup a test to check Pipfile before and after tox executes to make sure it's not adding the deps into it.
There is a environment variable patch which touches a Pipfile in each venv directory. That should be used instead of the one in the root directory.

On setup, clone the Pipfile to venv path, e.g. .tox/pyxx/Pipfile
On execution, use PIPENV_PIPFILE as the venv pipfile, not the root one.

mkdir test-37
cd test-37
vi tox.ini # paste your example
pip3.6 install virtualenv
python3.6 -m virtualenv env/
source env/bin/activate
pip install pipenv tox tox-pipenv
tox -vv  # whilst watching Pipfile

@jleclanche I've built a fix for this in https://github.com/tox-dev/tox-pipenv/pull/44
If you're able to test that would be great.
the plugin will clone the Pipfile into .tox/{venv}/Pipfile and use that for installing any dependencies specified in deps.
I've checked it against the tox ini file you put in this ticket.


⚠ Bofrost.si has degraded performance

In 81e23ed, Bofrost.si (https://www.bofrost.si) experienced degraded performance:

HTTP code: 200
Response time: 5908 ms

Resolved: Bofrost.si performance has improved in 52e252f.


Command for git restore

There needs to be a command "Git: Restore" which would discard local changes to the file, as if I would have entered git restore … in the terminal.
As an example of other commands, there already exists a command "Git: Stage Changes" which stages the changes for the current file, as if I would have entered git add … in the terminal.
"Git: Restore" is a very commonly needed command, but it seems to be missing.
See:

Git Tower: git restore
What is the git restore command and what is the difference between git restore and git reset?

@sofiabe1 and I plan to look into this

Hi, I'd love to work on this, but if git checkout is covering all the cases when it comes to discard changes? what would git restore add then?

Hi, I'd love to work on this, but if git checkout is covering all the cases when it comes to discard changes?

First, did you read the links in the description? They explain it in depth.
Secondly, when I hit Ctrl+Shift+P, I don't see an option for a per-file git checkout, either. But as pointed out several times in the Stack Overflow question/answer:

… git-restore seems the safer option if you only want to revert local work.

But don't take my word for it. Read all the history and technical details in the link.


test: fixes for E2Es cleanup operations

Closes #3801

E2E run: https://github.com/EnterpriseDB/cloudnative-pg/actions/runs/7818438589

we should open an  issue

/ok-to-merge


Different animation for "On Startup" than for the other settings pages

The On Startup settings page has a different animation than the other settings pages.
https://www.youtube.com/watch?v=6OIJrsLGN0Y

It's the same animation, the reason it might look a little different is that there are no controls on the right of the page while the other pages do have controls on the right.


Convert stories.mdx to readme, update template

Most people will be looking at the readme on github anyways, so lets change our standard format. The md should have a link to the correct survey on storybook.

Closed in https://github.com/Watts-Lab/surveys/pull/66


iOS Client

I'm currently creating working on a concept iOS app that communicates with a remote Vertx Event Bus using TCP.
Your Swift classes were a big help to my project because I have very little web and networking experience.
I wanted to say thank you by creating a demo iOS client app that communicates with your test-server implementation.
The behaviors are from the EventBusTests.swift test class.

Thanks for this! Sorry for the delay, I've been on vacation, I'll try to take a look sometime this week.

No worries sir and no pressure :)


Add additional SSL fields to backend

Oops, I had intended to just make this PR into my own master branch first.
Let me know if there's anything I should add to help get this into upstream!

Hi @kibra
Are these new API fields? I don't see them in the docs

Hi @sethvargo
Yes, these listed in the docs: https://docs.fastly.com/api/config#backend
This may be a new feature, I'm not sure.


controku: init at 1.1.0

Description of changes

Add package for controku, a Python library and GTK3 app for controlling Roku TVs.
Also add ssdpy, a dependency library used to discover TVs on the network.
Things done

Built on platform(s)

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

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

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

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

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

[ ] Fits CONTRIBUTING.md.

Restart.

What does "restart" mean? This is the first new package I've added, did I do something wrong?

Originally you marked "fits CONTRIBUTING", while it obviously does not fit CONTRIBUTING in any way.

I see, I had read through CONTRIBUTING but had missed that specific information. I see it there now, and will fix it before marking it ready again.
You say it doesn't fit CONTRIBUTING in any way: is there more that I've missed? I guess maybe there's formatting changes needed, I'll look at that too. Like I said, this is my first time adding a new package: what's obvious to you is probably not obvious to me.

I think this is ready? Please let me know if I missed something.

Now it looks OK. However I have few expertise on Python packaging.
If no one else complain about this in three days, ping me and I will merge.

I have no hardware to test this, but the GUI worked nice.

I tested it with my Roku TV, including with these latest changes. :+1:


Except the package resources' error if there is a version conflict wi…

…th the given entrypoint

I start going cowboy coding.


Error while connecting to github

Hi,
I am trying to authenticate Uchiwa with github and I am getting the following error
"Date":"2015-07-02T02:10:58.497824233+05:30","Level":"warning","Src":{"Func":"github.com/sensu/uchiwa/uchiwa/daemon.(*Daemon).fetchData","Line":68},"Output":"API call to "http://<IP_ADDRESS>:4567/stashes\" returned: Get http://<IP_ADDRESS>:4567/stashes: dial tcp <IP_ADDRESS>:4567: connection refused"}
Can some one please tell me where am I going wrong?
My Config file has
{
"sensu": [
{
"name": "test-env",
"host": "<IP_ADDRESS>",
"ssl": false,
"port": 4567,
"path": "",
"timeout": 5000
}
],
"uchiwa": {
"port": 3000,
"stats": 10,
"refresh": 10000
},
"github": {
"clientId": "",
"clientSecret": "",
"server": "https://github.com",
"roles": {
"guests": [
""
],
"operators": [
""
]
}
}
}

Hi @adithyakhamithkar
The error you see isn't related to an authentication problem. Uchiwa is actually unable to connect to your Sensu API (http://<IP_ADDRESS>:4567) so you should try to figure out why. Does the Uchiwa box has access to this address? Does your Sensu API is password protected?
For your information, Github authentication is only available with the Enterprise Dashboard. If you are using Uchiwa, please refer yourself to http://docs.uchiwa.io/en/latest/configuration/uchiwa/ instead.

Uchiwa is running on the same box and it's not password protected

If they are running on the same box, could you try to use <IP_ADDRESS> instead?
I recommend you to also take a look at the Sensu API logs (/var/log/sensu/sensu-api.log).

I have stopped getting that error. And i don't see any thing in the api logs. But this again in the uchiwa logs
{"Date":"2015-07-01T10:07:33.965516932+05:30","Level":"warning","Src":{"Func":"github.com/sensu/uchiwa/uchiwa.(*Uchiwa).GetClient","Line":120},"Output":"Could not find client sensu-master-prod"}
{"Date":"2015-07-01T10:11:38.271157807+05:30","Level":"info","Src":{"Func":"github.com/sensu/uchiwa/uchiwa/config.Load","Line":73},"Output":"Loading configuration file /etc/sensu/uchiwa.json"}
{"Date":"2015-07-01T10:11:38.271675009+05:30","Level":"info","Src":{"Func":"github.com/sensu/uchiwa/uchiwa.(*Uchiwa).WebServer","Line":274},"Output":"Uchiwa is now listening on <IP_ADDRESS>:3000"}
{"Date":"2015-07-01T10:11:38.888697183+05:30","Level":"warning","Src":{"Func":"github.com/sensu/uchiwa/uchiwa.(*Uchiwa).GetClient","Line":120},"Output":"Could not find client web-01"}
{"Date":"2015-07-01T10:17:16.69373084+05:30","Level":"info","Src":{"Func":"github.com/sensu/uchiwa/uchiwa/config.Load","Line":73},"Output":"Loading configuration file /etc/sensu/uchiwa.json"}

@adithyakhamithkar it looks like you are facing some connectivity issues between the Sensu API and Uchiwa so I would recommend you to troubleshoot this aspect. Let me know if you are able to find anything.


bug in entrypoint - SERVER_PORT

If you set the SERVER_PORT env value the following script will be executed in https://github.com/idoop/docker-nuget-server/blob/master/docker-entrypoint
    sed -i -e "s/listen 80/listen ${SERVER_PORT}/" /etc/nginx/conf.d/nuget.conf

I set SERVER_PORT to 8080 and restarted the container. The nuget server listened on port 8080 as expected.
I set SERVER_PORT back to 80 and restarted the container. The nuget server still listened on port 8080 and was not reachable anymore.

I have the issue other way around:
I set SERVER_NAME: "localhost:8080" and SERVER_PORT: "8080" and it is still trying to bind to 80


2.5.0-development: missing window.localStorage

1. Which version of PhantomJS are you using? Tip: run phantomjs --version.
2.5.0-development
2. What steps will reproduce the problem?
i. Create a JavaScript file check-local-storage.js, such as:
'use strict';

var page = require('webpage').create();

page.open('http://example.com', function() {
  var ls = page.evaluate(function() {
    return String(window.localStorage);
  });

  console.log(ls);

  phantom.exit();
});

ii. Run the script with PhantomJS v2.5.0-development.
$ phantomjs --version
> 2.5.0-development

$ phantomjs check-local-storage.js
> null

As you can see, in 2.5.0-development window.localStorage is not a valid object and we can't use its methods – clear, getItem, setItem etc.
3. Which operating system are you using?
$ sw_vers

ProductName:	Mac OS X
ProductVersion:	10.12.2
BuildVersion:	16C67

4. Did you use binary PhantomJS or did you compile it from source?
The binary downloaded from https://bitbucket.org/ariya/phantomjs/downloads/phantomjs-2.5.0-beta-macos.zip.
5. Please provide any additional information below.
With the latest stable version v2.1.1 installed via Homebrew, the code above prints the expected behavior. So, this bug was certainly introduced in v2.5.0-development.
$ phantomjs --version
> 2.1.1

$ phantomjs check-local-storage.js
> [object Storage]

Since 2.5 (or this commit https://github.com/ariya/phantomjs/commit/fc57497166b85678d5a6616019c8c21139b74d05) localStorage disabled by default. This change was intended to make PhantomJS portable as much as possible. To enable localStorage you have to set its quota >= 0, e.g.:
phantomjs --local-storage-quota=5000

How will I be able to enable the localStorage via OpenQA.Selenium.PhantomJS?
I'm using the 2.5.0-development version for Selenium C# testing and the testing web application is causing issues as localStorage is disabled.

How to set local-storage-quota via Selenium WebDriver
`PhantomJSDriverService driverService = PhantomJSDriverService.CreateDefaultService();
driverService.LocalStorageQuota = 5000;
PhantomJSDriver driver = new PhantomJSDriver(driverService);`

@GopianiS ghostdriver does not support local storage or session storage apis.  see detro/ghostdriver#25 and detro/ghostdriver#26.
i don't see it in the w3c specification so you would have to follow https://github.com/SeleniumHQ/selenium/wiki/JsonWireProtocol.  you can implement it by delegating to selenium atoms.

@Vitallium I have ran into this same issue, however, I am doing this through Selenium Webdriver. It seems that I need both --local-storage-quota and --local-storage-path. The quota alone did not work. Is this expected?
@GopianiS Sample code:
DesiredCapabilities phantomBilities = DesiredCapabilities.phantomjs();
phantomBilities.setCapability("phantomjs.cli.args",
		    new String[] { "--ignore-ssl-errors=true", "--local-storage-quota=5000",
			    "--local-storage-path=" + Files.createTempDirectory("PhantomLocalStorage-").toString() });
return new PhantomJSDriver(phantomBilities);

How can I run phantomjs with a flag --local-storage-quota=5000 when running on casperjs?

@nirpeled were you able to figure this out with casperjs?

@AlexKopen I'm afraid not, I decided to switch to cypress.io


watchdog file system check not trigger refresh on file opened

fixes #358
The watchdog file system monitor introduce a new event handler INOPNED for when file opened. The new "file opened" event is included by default in all events: https://github.com/gorakhargosh/watchdog/blob/v2.3.0/src/watchdog/events.py#L289
The details are discussed at https://github.com/gorakhargosh/watchdog/issues/949, we encounter the same issue. But we use on_any_event explicitly, we adopt the same change as https://github.com/gorakhargosh/watchdog/commit/25a2d1fec55fc32f97055ba827c8ce7b959acb34 to avoid spammed by the opened event update.

Thanks for chiming in @BoboTiG : 💖
Do I understand correctly that the 'breaking' change was reverted in 2.3.1? Even if that is the case, I think the change in this PR still makes sense for us. 🤔

That PR still makes sense 👍🏻
I reverted the behavior change for watchmedo only.


Programming Exercises, Manual Assessment: Unsaved Inline Annotation Broken when Switching Files

Describe the bug
In the assessment view, inline annotations that are not saved might break when switching files in the online editor.
They can no longer be saved or cancelled.
Edit: At one occasion, one of the tutor comments could not be edited anymore (6.2.0). This can also be reproduced by switching between the files, as explained in the section below.
To Reproduce

Navigate to the assessment view of any submission.
Open the inline annotation for any file and keep it open without saving it.
Switch to another file and do the same thing.
After repeating this a few times, it is possible that the Cancel and Save buttons of the inline annotation editor don't work anymore.

Expected behavior
I'd expect that switching between files in the editor doesn't affect the inline comments and I can continue working where I left off.
Screenshots

Which version of Artemis are you seeing the problem on?
6.2.0 & 6.2.2 & 6.3.1 (other ones not tested)
What browsers are you seeing the problem on?
Chrome
Additional context
No response
Relevant log output
No response

Another error report from an instructor:
Happened directly when writing a comment. Comment got stuck open, cancel/save do not work any more.

Anything in the console?

(Ah forgot that information)
I asked them to please explicitly check after it happened for the first time, but apparently no console output.

maybe automatic change tracking in Angular is going crazy? Could you check if the html of the involved components invoke methods? Or if the inputs of the involved components involve method calls?
Another issue could be some kind of dead lock in the involved rxjs code

A potentially related report from another instructor: I clicked on a line's + sign and got displayed an inline comment box from another class, see screenshot. This is the Interface, and I did not create the comment here, but definitely belongs to another class.

Unfortuantely, we have no idea how to track these issues down or debug that. It is even difficult to tirgger this issues on demand for debugging. On the other side while doing real assements they show up quite frequently, we have one instructur say twice an hour. Again nothing in console or Sentry. I hope that comments are not shown at wrong places to students.

In case a student submission a a long feedback, and the tutor opens the result details, there probably is a cyclic dependency between the longFeedback and the feedback. Therefore, a following save/submit has an issue which in turn causes the rest of the Javascript runtime to no longer continue properly.

I think we can narrow down the issue to what happens inside
https://github.com/ls1intum/Artemis/blob/83ae671d4b0123c59fa86f658c50d800091ef78e/src/main/webapp/app/exercises/programming/assess/code-editor-tutor-assessment-inline-feedback.component.ts
The components gets the valid feedback object and the attributes all seem correct when logging them as part of an ngOnInit method.
At that point I‘m not sure where inside the Angular component initialisation it could go wrong. Any help from someone with more experience in that area would be very much appreciated.
It seems that in most cases only the @Output events for the button presses are broken since the component no longer reacts to button presses.
IIRC in some cases, though, not even the text area was populated with the correct data which would indicate that the initialisation of the components broke before even before that (?).

Right, in most case many existing inline comments are shown openend with an empty text area. Empty means it shows the initial help text "You can enter feedback here...", like they are freshly added after clicking on a line's +. And then all are blocked, i.e., the buttons save, abort, ... do not work. The buttons' listener methods are not called, i.e., a break point with them is not reached after clicking on such a button.
The issue is triggerable, however, it may last say up to 15 min of clicking, i,e,, creating and editing inline comments in different files of an assessment and maybe inspecting the feedback from time to time. But the issue may also appear sometimes quickly.  As far as I can say it nearly always shows up immediately after a file switch. The only thing what helps then is a base reload of the page, then all existing comments are shown closed with an operable edit button as the should.

Sounds like some objects do not get cleaned up properly. Could this be an issue?


Make SQLServerException constructors public

Codecov Report

Merging #247 into dev will decrease coverage by <.01%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##                dev     #247      +/-   ##
============================================
- Coverage     33.46%   33.45%   -0.01%
+ Complexity     1491     1486       -5
============================================
  Files            97       97
  Lines         23390    23390
  Branches       3840     3840
============================================
- Hits           7828     7826       -2
  Misses        14001    14001
- Partials       1561     1563       +2

Flag
Coverage Δ
Complexity Δ

#JDBC41
33.36% <0%> (-0.01%)
1483% <0%> (ø)

#JDBC42
33.39% <0%> (+0.04%)
1483% <0%> (+2%)
:arrow_up:

Impacted Files
Coverage Δ
Complexity Δ

src/main/java/microsoft/sql/DateTimeOffset.java
37.14% <0%> (-2.86%)
8% <0%> (-2%)

.../microsoft/sqlserver/jdbc/SQLServerConnection.java
41.1% <0%> (-0.09%)
227% <0%> (-2%)

...om/microsoft/sqlserver/jdbc/SQLServerBulkCopy.java
44.98% <0%> (-0.08%)
182% <0%> (-1%)

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

Continue to review full report at Codecov.

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

@mhaderman : Unfortunately your dev branch do not have fixes. Might be some fixes did not pushed to remote dev branch. I am keeping PR open so when you commit changes on DEV branch those commits will be reflect in this PR.

@mhaderman : Instead of pushing changes from master to dev can you push changes from your dev to dev branch. May be you need to manually merge only your changes in your dev branch / branch which is forked from mssql-jdbc/dev and then used that branch to create pull request.

Ref:  Merge pull request #3 from mhaderman/master

Sorry for inconvenience.

hello @mhaderman , thank you very much for your contribution. We decided to close this PR since the indentation does not match our formatter.
However, the implementation you made is great, therefore we created a new PR #334 that is identical to your implementation.
Thank you again for your contribution.


Add CODEOWNERS file

https://help.github.com/en/github/creating-cloning-and-archiving-repositories/about-code-owners

Will revisit this at a later date, closing this for now.


Feature request: use docstring as help string

Hello again!
VS Code has the ability to use a """ string under an attribute as the documentation for the field. I am wondering if it would be possible for TypedArgs to use such strings as a default help= value?
For example, I can define documentation for an args field like so:
class Args(tap.TypedArgs):
    debug: bool = tap.arg(
        "-d", default=False, help="Output additional debugging messages.")
    """Output additional debugging messages."""

And then a mouse-over in VS Code looks like this:

It would be great to be able to use the "docstring" as the help string, e.g. like this:
class Args(tap.TypedArgs):
    debug: bool = tap.arg("-d", default=False)
    """Output additional debugging messages."""

Thanks!

I just did a quick check, but it doesn't look like that docstring information is available at runtime, or is it?

I am not very knowledgeable about python internals, but perhaps something like this could work? https://stackoverflow.com/a/31764368

If Python would support it officially and it would just be readable from __doc__ this would be doable. But having to re-parse the source file this is originating from an guessing where it was in the AST is probably too fragile and slow. In particular it would be super ugly to support inheritance properly.
Perhaps typing.Annotated would be an alternative?

I took a look at typing.Annotated but it is a very generic mechanism and there aren't any good conventions for using it as an attribute docstring.
Since there is no official support for variable docstring, and no good runtime workaround, I will close this request. Thanks for the clarifications!


Can there be a link to the sample included?

There is no way to figure out how to make an app support this lock feature. The documentation is not sufficient and it is confusing. I am trying to make my app available for kiosk user under assigned access but it requires Lock and background task feature. Is there a way to have a complete sample that demonstrates this functionality?

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 82735562-385b-1ac5-b0a5-1caa2b400d87
Version Independent ID: dafdf1b8-d884-2074-7d25-ad387bcf7850
Content: Kiosk apps for assigned access Best practices - Windows drivers
Content Source: windows-driver-docs-pr/partnerapps/create-a-kiosk-app-for-assigned-access.md
Product: windows-hardware
Technology: windows-devices
GitHub Login: @EliotSeattle
Microsoft Alias: eliotgra

Hi @mitulsuthar
I'm afraid that the only sample we currently have for partner apps is Partner-app-development in Samples for partner application development (OEM, MO, IHV) for Windows.
Eliot


ResourceLoader.exists doesn't work after export

Godot version:
Godot 3.1 alpha2 with official export templates

OS/device including version:
Windows 10 Ryzen 5 2400G
OpenGL ES 3.0 Renderer: AMD Radeon(TM) RX Vega 11 Graphics

Issue description:
In my project, I load a lot of tiny textures at runtime and I need to know before calling the load function if these images exist. This code in example works fine in the editor:
extends Sprite

export(String) var image_filename

var index = 0

func _ready():
	_on_Timer_timeout()
	$Timer.start(1)

func _on_Timer_timeout():
	if ResourceLoader.exists("res://images/"+image_filename+str(index)+".png"):
		self.texture = load("res://images/"+image_filename+str(index)+".png")
	else:
		$Timer.stop()
		print("Can't load")
	index += 1

But It doesn't work after exporting.
I'm sorry if I can't be more specific than this.
EDIT: I forgot to mention that if I call load directly it works and throw an error when it tries to load an unexistent texture, so resources are properly exported.

Steps to reproduce:
Open the project in the editor and run it.
Sprite node should change texture loading 3 images, at fourth attempt it print "Can't load"
Export the project with official template and run it.
No texture is loaded and it print "Can't load" twice
Minimal reproduction project:
github issue.zip

If it is a scope problem this is a REALLY BIG issue. _on_Timer_timeout can't access a field of its class? I tried to declare a variable like this:
func _on_Timer_timeout():
	var file = self.image_filename
	if ResourceLoader.exists("res://images/"+file+str(index)+".png"):
		self.texture = load("res://images/"+file+str(index)+".png")
	else:
		$Timer.stop()
		print("Can't load")
	index += 1

And nothing change.
In this code the first argument can't be nil without an error because it's a concatenation of a constant string with a variable.
I'm thinking on a bug in path remapping after export because in editor this run fine.

yeah but it's a bug with the scope after exporting and not with the actual path.

Still here on 3.1 beta 10


vscode python program output is not expected

VSCode Version:1.00
OS Version:Windowns7 64bt

Steps to Reproduce:

in below file , executing test.py in
testpy.zip
assuming there is a line change between "hello"s, for example , if I run in command window, or other python IDE, I would see output like this :

However , if I run this test.py in vscode python , I can't see empty lines between "hello"s , wondering any thing I missing in the setting file?
Best Regards
Jack

I am very sorry to hear you are having issues with VS Code. Reading your description it seems that the issue originates from an extension and not VS Code itself. Thereby I will close this issue and kindly ask you to report this issue against the extension repository.
Most extensions are on GitHub as well so it should be easy to file it against the extension. If you open an extension on the market place, click on the Support link to find out more.

Thanks again for your feedback!


Correcting Nanopore long reads with PacBio HiFi

Dear author,
It happens that I have PacBio HiFi reads of about ~11 Kb avg read length and Nanopore >30 Kb avg read length, and I am wondering how could I polish my Nanopore reads with HiFi? It would be gold if this was possible since I suspect that the correction would be more accurate than when using short reads given the differences at mapping. Thanks.
Rom

Yes, all you would need to do is use your PacBio HiFi reads to build your BWT.  All of the construction commands provided (e.g. https://github.com/holtjma/fmlrc/wiki/Converting-to-the-fmlrc-RLE-BWT-format) should work "as is" to do that, just replace the usual r1 & r2 from short reads with just the single (or perhaps multiple) FASTQ file for the PB dataset.
Once the MSBWT from the PB data is built, you just follow the normal correction process (granted, you may want to experiment a bit with some parameters like the k-mer sizes).  Let me know if you have any more questions about this!

Thanks. I will give it a try and report the results.

closing due to inactivity, feel free to reopen if you have issues


I use it in chinese style.the result is wonderful

content:

style:

output:

could someone tell me what dose "loadcaffe" use for? thx

Loadcaffe allows you to load Caffe networks, in Torch7.

great


Update manager sample

All changes looks good. Just bit curious about this env variables, process.env.GCLOUD_PROJECT || process.env.GOOGLE_CLOUD_PROJECT. I understood that we need this variables to get some details which are related to google to use pub/sub. But do we need to continue by using same or something different? As this same are also used in MQTT samples as well.

Yes, we'll need to continue doing the same in order to communicate with Google pub/sub. Let me know if you have any questions


remove electron/libs/auth.ts its not necessary for the meantime

Please check my PR
https://github.com/pkgxdev/ossapp/pull/889


Fix typo in the style documentation

Was going through the documentation itself and found this typo just waiting to be fixed

Thanks!
bors r+


Feature request: solvent accessible surface area (SASA)

Describe the solution you'd like
Implement solvent accessible surface area (SASA) using an angular Lebedev-Laikov grid as described in "A quadrature formula for the sphere of the 131st algebraic order of accuracy", Doklady Mathematics, Vol. 59, No. 3, 1999, pp. 477-481.
Extend present grid implementation in src/grid.py to cover finer grids and use the defined gridpoints to construct a SASA.

Note that most Lebedev-Laikov grid implementations carry either the LGPL (inherited from J. Burkardt's version) or originate from the CCL announcement of the original implementation of D. Laikov, which has somewhat unclear licensing conditions but might be considered public domain (?).

Note that most Lebedev-Laikov grid implementations carry either the LGPL (inherited from J. Burkardt's version) or originate from the CCL announcement of the original implementation of D. Laikov, which has somewhat unclear licensing conditions but might be considered public domain (?).

That's right, using Burkardt's version would force an LGPL license on the project. Laikov's original version does not seem to be properly licensed, especially since the linked Fortran version was not implemented by Laikov himself, but rather by Christoph van Wuellen depending on an initial C-version written by Laikov.

My xtb and DFTB+ implementation of the SASA is based on J. Burkhardt's version due to the clearer and compatible licensing.
Every other implementation (C, Matlab, Python, ...) I have been able to find so far at some point goes back to J. Burkhardt's version or C. van Wuellen's version of the C implementation by D. Laikov. The original C code seems to be lost, at least I wasn't able to find it up to now.

Thank you @awvwgk!


Surfacing inefficient/memory errors with large areas

Look at replacing with vgrid
Should support chunking of soundings, or some kind of parallelized input with a single output object
Examine cloud friendly formats cloud optimized geotiff

Resolved with move to Bathygrid module


[Feature Request] Can search within a folder

We can add a new search prefix :f which will search all the folders. Once the user selects a folder, it becomes a normal search but it only searches that folder. If the user hits the left arrow, it will go back to the folder search mode.
NOTE: It may be tricky to handle the case where multiple folders with the same names. Perhaps we'll need to show the whole full folder paths.
If the user already knows the folder's exact path, they could also type (this mimic Obsidian's search syntax)
f:folder-name
f:"folder name"
f:(folder name)

Hi, @jzhang-brex .
I think the feature is a bit complex for the quick switcher. Despite this, it seems handy, so I will keep it open and see the reaction of others.

I'm really interested in this feature, especially if there will be an ability to start focused search by clicking on folder in the file explorer menu.

@meskill
Your suggestion is maybe easy because a search with folder names/ means nearly the same.

Hi, @tadashi-aikawa.
I've been using the feature you've mentioned with folder names/ for a long time already, but recently I've noticed that search is not working anymore the way I expect. Is there something changed in it recently?
For me the search shows only files in subfolders of entered folder and shows the file in that folder only.

Hi, @meskill :)
I could reproduce it. I have created it as a new issue, https://github.com/tadashi-aikawa/obsidian-another-quick-switcher/issues/204.


Ap idocs2

Just shipping the API docs and holding off on connecotr

Docs Build status updates of commit d56d1a4:
:warning: Validation status: warnings

File
Status
Preview URL
Details

partner-rest/TOC.yml
:warning:Warning
View
Details

partner-rest/develop/api-authentication.md
:white_check_mark:Succeeded
View

partner-rest/develop/create-a-referral.md
:white_check_mark:Succeeded
View

partner-rest/develop/referral-resources.md
:white_check_mark:Succeeded
View

partner-rest/develop/update-a-referral.md
:white_check_mark:Succeeded
View

partner-rest/downloads/PartnerReferralsToDynamicsCRMLead.zip
:white_check_mark:Succeeded

partner-rest/images/SetFlowVariables.png
:white_check_mark:Succeeded
View

partner-rest/images/SharedReferral.png
:white_check_mark:Succeeded
View

partner-rest/images/partner-newgateway-app.png
:white_check_mark:Succeeded
View

partner-rest/TOC.yml

Line 0: [Warning] Invalid file link:(~/develop/referral-connectors.md).

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


ios: fix leaking of http streams

At the moment, we leak all EnvoyHTTPStreamImpl and EnvoyHTTPCallbacks instances with every stream due to the deliberate retain cycle used to keep the stream in memory and pass callbacks through to the platform layer while the stream is active. This ends up also leaking the callback closures specified by the end consumer, along with anything captured by those closures.
To resolve this problem, we will release the strong reference cycle that the stream holds to itself when the stream completes.
The state/callback for stream completion has to be stored somewhere in the ios_context type and retained since the ios_context is a struct and doesn't retain its members.
We considered having the EnvoyHTTPCallbacks hold a reference to the EnvoyHTTPStreamImpl rather than having EnvoyHTTPStreamImpl hold a strong reference to itself. However, this posed a few problems:

EnvoyHTTPCallbacks is designed to support being shared by multiple streams, and thus cannot have only 1 reference to a stream
EnvoyHTTPCallbacks is instantiated by the Swift layer, which means we'd have to leak implementation details of how the stream is kept in memory and shift logic out of the stream implementation

With these in mind, we decided to have EnvoyHTTPStreamImpl manage its own lifecycle based on the state of the network stream.
Signed-off-by: Michael Rebello<EMAIL_ADDRESS>

@goaway @junr03 curious to see your thoughts on this - totally open to suggestions.

@rebello95 thanks for tracking this down!
I wanted to suggest a similar, but alternative approach that would let us keep everything as ivars, and offer a somewhat more direct mechanism for releasing the stream.
What do you think about having EnvoyHTTPCallbacks hold a strong reference to EnvoyHTTPStream and create the ref-cycle that way (dropping strongSelf on EnvoyHTTPStream). Then the only thing that needs to happen in error/cancel/final callbacks is EnvoyHTTPCallbacks unsets its EnvoyHTTPStream ref.
I think this will result in less code and less indirection. What I also like about this pattern is that EnvoyHTTPCallbacks is the true state that the core layer needs to track, and in that sense the dependency relationship seems more correct.

Thanks for the reviews @junr03 and @goaway!
Per discussions offline, I've updated the PR and description to reflect the thought process and state of the current diff.

@junr03 addressed your comments, PTAL


ProtocolChanged error when perfoming append write

Environment
Delta-rs version: 0.13.0
Binding:
Environment:

Cloud provider:
OS: MacOS
Other:

Bug
I have this Python code that executes 3 insert transactions into a delta table
import pandas as pd
from deltalake.writer import write_deltalake
from deltalake import DeltaTable

if __name__ == '__main__':
    # First transaction
    id_list = []
    name_list = []

    for i in range(1, 11):
        id_list.append(i)
        name_list.append(f'item {i}')

    data_dict = {'id': id_list, 'name': name_list}
    write_deltalake('./data/table2', pd.DataFrame(data_dict), mode='append')

    # Second transaction
    id_list = []
    name_list = []

    for i in range(11, 16):
        id_list.append(i)
        name_list.append(f'item {i}')

    data_dict = {'id': id_list, 'name': name_list}
    write_deltalake('./data/table2', pd.DataFrame(data_dict), mode='append')

    # Third transaction
    id_list = []
    name_list = []

    for i in range(16, 31):
        id_list.append(i)
        name_list.append(f'item {i}')

    data_dict = {'id': id_list, 'name': name_list}
    write_deltalake('./data/table2', pd.DataFrame(data_dict), mode='append')

This does what is intended. When I run this code, I can confirm by checking the _delta_log that indeed 3 transactions was executed.
Now I am trying to do similar using Rust, with the following code
fn get_data(start: u8, end: u8) -> RecordBatch {
    let schema = Arc::new(ArrowSchema::new(vec![
        Field::new("id", DataType::Int32, false),
        Field::new("name", DataType::Utf8, false),
    ]));

    let ids: Vec<i32> = (start..=end).map(i32::from).collect();
    let names: Vec<String> = ids.iter().map(|x| format!("item {x}")).collect();

    let id_values = Int32Array::from(ids);
    let name_values = StringArray::from(names);

    RecordBatch::try_new(schema, vec![Arc::new(id_values), Arc::new(name_values)]).unwrap()
}

async fn main() {
    // First transaction
    let data = get_data(1, 10);

    let table = DeltaTableBuilder::from_uri("./data/table3")
        .build()
        .unwrap();

    let ops = DeltaOps::from(table);

    ops.write(vec![data]).await.unwrap();

    // Second transaction
    let data = get_data(11, 15);

    let table = DeltaTableBuilder::from_uri("./data/table3")
        .build()
        .unwrap();

    let ops = DeltaOps::from(table);

    ops.write(vec![data]).await.unwrap();

    // Third transaction
    let data = get_data(16, 30);

    let table = DeltaTableBuilder::from_uri("./data/table3")
        .build()
        .unwrap();

    let ops = DeltaOps::from(table);

    ops.write(vec![data]).await.unwrap();
}

But when I run this, it fails with the following error
thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Transaction { source: CommitConflict(ProtocolChanged) }', src/main.rs:87:33
stack backtrace:
   0: rust_begin_unwind

I noticed the first transaction is executed and this error happens on the second write to the delta table.

The reason you are seeing this probably due to poor documentation on our end :( ...
The build() method just sets up the table, but does not yet actually load the table state. What happens then is that each individual transaction tries to create a new table (v0), which would include the protocol metadata action. On trying to commit it sees the version already exists and conflict resolution kicks in. Writing new data to a table when the protocol was changed by a concurrent transaction (which the conflict checker thinks happened) is an illegal operation.
So in the first case build is what you want, in subsequent calls you need to load the table state via .load().await, rather then build().
The write operation actually also returns the updated table instance, so you do not have to re-load entire state every time when you do multiple operations in a row..
something like
async fn test_write() {
   let table = DeltaTableBuilder::from_uri("./data/table3")
        .build()
        .unwrap();
    println!("version: {}", table.version());

     // First transaction
    let data = get_data(1, 10);
    let table = DeltaOps::from(table).write(vec![data]).await.unwrap();

    println!("version: {}", table.version());

    // Second transaction
    let data = get_data(11, 15);
    let table = DeltaOps::from(table).write(vec![data]).await.unwrap();

    println!("version: {}", table.version());

    // Third transaction
    let data = get_data(16, 30);
    let table = DeltaOps::from(table).write(vec![data]).await.unwrap();

    println!("version: {}", table.version());
}

@finlaydotb, closing this for now, as the above code runs as expected on my machine.
Feel free to re-open if the issue persists for you.


LocalInvariant

This introduces LocalInvariant, which is like Invariant, but with two key differences:

A LocalInvariant is not marked Sync
When opening LocalInvariant, the inside is not restricted to a single atomic operation.

The second point is okay because the first point ensures that we can never have two threads open the invariant at the same time.
This is a new, experimental type that didn't have any analogue in LinearDafny (which didn't have a notion of Sync/Send at all). I hypothesize that it will be useful for certain (thread-local) interior mutability patterns. The example I have in mind is an untrusted implementation of Rc, but that example will need to wait until more of the concurrent-state-machine stuff is done.

considering AtomicInvariant and NonAtomicInvariant as alternate names instead of Invariant and LocalInvariant

What about AtomicInvariant and ThreadInvariant?
I'll start taking a look at the rest of this, too!
Thanks!


refactor(cli): try google/argh for arg parsing

The problem with clap is that it's binary size is huge! And it compiles really slowly. You cna see the bloat here: https://github.com/Boshen/oxc/actions/runs/4336082139
Someone suggested google/argh, let's try it.

After some more testing and evaluation of the library, I'm going to close this for the following reasons:

the library seems minimally maintained
there are corner cases that are are hard to cover, for example the two cases I listed above
we want to spend less time on writing code for command line parsing, and clap achieves this


⚠ AsianCinema has degraded performance

In b64cd1a, AsianCinema ($ACM) experienced degraded performance:

HTTP code: 525
Response time: 20461 ms

Resolved: AsianCinema performance has improved in 91da00c after 5 minutes.


Update Coin List

What's the ETA on the coin list update. Great work BTW!

@CapitanRedBeard Just updated. Thanks! :) https://github.com/cjdowner/cryptocurrency-icons/commit/f8a0efa2d9e5daa8bf9f235f3a299a71b65cbc6a
Will re-open another issue when I add more 🎉


The link broken and this page should explain the where is  PROPERTYKEY values defined

[Enter feedback here]
This link is broken:
https://docs.microsoft.com/en-us/windows/desktop/api/wtypes/ns-wtypes-_tagpropertykey
And users normally don't know what is PROPERTYKEY value?
This page should link to the header file of
https://github.com/tpn/winsdk-10/blob/master/Include/10.0.16299.0/shared/sensorsdef.h
All sensor-related PROPERTYKEYs are defined here.

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 0a97ad2d-4e14-933c-3cd2-d15441a48f63
Version Independent ID: cbc75381-3c78-bbba-0bf4-21c3ef057fdc
Content: Windows.Devices.Sensors.Custom Namespace - Windows UWP applications
Content Source: winrt-api-build/xml/ns-Windows.Devices.Sensors.Custom.xml
Product: uwp
Technology: winrt-reference
GitHub Login: @Karl-Bridge-Microsoft
Microsoft Alias: kbridge

Thanks @harveylv - the topic has been updated and should be live soon.


Create an action on push to master

Inorder to have a public stable and dev deployment, subsequent release and commit to master  should be accompanied by an action to achieve the following:

Checkout the master Branch/ release tag and  Build docker images, publish them to docker-hub.
Run the script to deploy docker images in the cloud.

closing this and now addressed on #1475


Surf do not open given argument or url

Accidentally created it, extremely sorry for that.

No worries.


Add installation section

This PR improves the "Installation" section slightly by:

Making the reader aware that nvcc has to be correctly installed and linked
Making sure that when installing with cuda, one adds: --features "cuda" instead of --features cuda as --features cuda doesn't work in all shells (e.g. it fails in zsh)
Shows the reader how to run the example on GPU

Ah just to mention what I said on your other PR, the good practice for cuda device is to just allocate one and re-use it (passing it by reference), we do that for all models and it would be great to have this done here too - and state it explicitely.

Looks all good to me, @Narsil any final thoughts or could we just merge this?


Documentation of updated carpetplots

Dear all,
thank you for providing such a great tool. I think, however, that the documentation should be updated:
The documentation for the newer versions of MRIQC still uses the older carpetplot and neither explains the legend nor reference the meaning of the separations. Only after an extended search, I was able to find an answer in #1003.
Best
Simon

Dear Simon,
Thank you for reporting this important issue! The documentation will be been updated with the new carpetplot image and its description once the pull request #1045 will be merged.


Issue with IAM permissions on master.

BUG REPORT

Uncomment only one, leave it on its own line:

kind bug

/kind feature

What happened:
https://github.com/kubernetes/kops/issues/5816
What you expected to happen:
add
        "elasticloadbalancing:DeregisterTargets",
to tarmak/terraform/amazon/modules/kubernetes/templates/iam_elb_controller.json
How to reproduce it (as minimally and precisely as possible):
Try to use an elb with externalDNS, it doesn'trecreate, and floods the aws account with trash.
Anything else we need to know?:
Environment:

Kubernetes version (use kubectl version):
Cloud provider or hardware configuration**:
Install tools:
Others:

/assign
Hi @BenCoughlan15, thanks for this.
We have created a PR for this here https://github.com/jetstack/tarmak/pull/750
as well as a PR for https://github.com/jetstack/tarmak/issues/479,  https://github.com/jetstack/tarmak/pull/749
We should be able to squeeze this into 0.6 which is coming out very soon! https://github.com/orgs/jetstack/projects/1

Thanks Josh, We've rolled it into our local version for now.
Cheers,
Ben


KAFKA-2626: Handle null keys and value validation properly in OffsetStorageWriter.

Oops, closing as I originally titled this with the wrong JIRA.


Some error checking and user output notes

Hi,
While running this it seems like the notebook hung but what really is happening is that notMNIST_large.tar.gz is taking a long time to extract. Also, since I looked at the contents of the directory a .DS_Store file was created.

Can one of the admins verify this patch?

I signed it! ( the CLA)

LGTM @vrv

LG, squash the commits into one and we'll merge!

Not sure how to do that with the GH interface. I made the changes in the web UI, not on git repo I checked out.


configureCallConstructionOptions does not respect phpDocComment type

In GapicClientTrait::configureCallConstructionOptions, the documentation states that $retrySettings should be of type RetrySettings. However, in [configureCallConstructionOptions] (https://github.com/googleapis/gax-php/blob/5867739a1db253b4cd64b0856c292598d271fd8d/src/GapicClientTrait.php#L522) it uses the $retrySettings as an argument for the RetrySettings::width which only accepts array as arguments. Thus if one sends a RetrySettings object as stated in multiple parts of the documentation for the $optionalArgs['retrySettings] key, then an error is rased stating Uncaught Type Error argument 1 must be of type array, object given

@vam-google @miraleung , can you please take a look?

Nice find, and thanks for the report @ivanrey. I've opened https://github.com/googleapis/gax-php/pull/270 to address this.


Harmonize the license in the source and in the nuget packages.

Fixes issue #779.   This makes us consistent with the rest of .NET Core Framework (https://github.com/dotnet/corefx).
Like the rest of corefx, we ship under the MIT license.

@joshfree  @terrajobst  FYI,   Making the PerfView/TraceEvent license consistent with what we do in corefx.
This puts it under the MIT license.     We had this license in the source, but the nuget package pointed at https://www.microsoft.com/net/dotnet_library_license.htm.


[UWP] put_SelectAction on Container and ColumnSet are E_NOTIMPL

The put_SelectAction method hasn't been implemented on Container and ColumnSet and throws E_NOTIMPL.
Just filing this issue so that this work gets tracked, it's a known issue but I never created the issue for it.
Tricky thing is that we need to be able to update the shared model when this is put, and we currently don't have a good way to do that. Someone needs to solve that problem.

Fixed by #888


Update to Elixir 1.9.4-otp22

This updates to using the Elixir version compiled for OTP-22

1.9.4 is already on Chocolatey? Am I missing something?
On Fri, Nov 8, 2019, 8:26 PM Michael Schmidt<EMAIL_ADDRESS>wrote:

This updates to using the Elixir version compiled for OTP-22
You can view, comment on, or merge this pull request online at:
https://github.com/ElixirWin/ChocolateyPackages/pull/53
Commit Summary

Update to Elixir 1.9.4-otp22

File Changes

M Elixir/Elixir.nuspec
https://github.com/ElixirWin/ChocolateyPackages/pull/53/files#diff-0
(4)
M Elixir/tools/chocolateyInstall.ps1
https://github.com/ElixirWin/ChocolateyPackages/pull/53/files#diff-1
(6)
M Elixir/tools/chocolateyUninstall.ps1
https://github.com/ElixirWin/ChocolateyPackages/pull/53/files#diff-2
(10)

Patch Links:

https://github.com/ElixirWin/ChocolateyPackages/pull/53.patch
https://github.com/ElixirWin/ChocolateyPackages/pull/53.diff

—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ElixirWin/ChocolateyPackages/pull/53?email_source=notifications&email_token=AABFOFOPLMFSBPIT3R4JEATQSYGS3A5CNFSM4JLBS6LKYY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4HYDJNXQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABFOFI4WSRYYAXYBJ3FDU3QSYGS3ANCNFSM4JLBS6LA
.

Its not using the version that is compiled for OTP-22

I only see one "precompiled.zip" out there for 1.9.4. Where is the version
compiled against OTP 22? I just want to know for future reference
On Fri, Nov 8, 2019, 8:43 PM Michael Schmidt<EMAIL_ADDRESS>wrote:

Its not using the version that is compiled for OTP-22
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ElixirWin/ChocolateyPackages/pull/53?email_source=notifications&email_token=AABFOFPZHLCEZEQGRVGSQJLQSYIVPA5CNFSM4JLBS6LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDT2SZQ#issuecomment-552053094,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABFOFMIE6DRJK6ET75MODLQSYIVPANCNFSM4JLBS6LA
.

Its https://repo.hex.pm/builds/elixir/v1.9.4-otp-22.zip
If you think we need to support OTP < 22 going forward I can work on figuring out what OTP is installed, but I feel like most Elixir people will update both when they update

So 1.9.4-otp-22 is up there but it's still defaulted to 1.9.4.  What do you
think--want to default it to 1.9.4-otp22?  Or say something on the Elixir
Forum so people are aware it's there?
On Fri, Nov 8, 2019 at 9:26 PM Michael Schmidt<EMAIL_ADDRESS>wrote:

Its https://repo.hex.pm/builds/elixir/v1.9.4-otp-22.zip
If you think we need to support OTP < 22 going forward I can work on
figuring out what OTP is installed, but I feel like most Elixir people will
update both when they update
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ElixirWin/ChocolateyPackages/pull/53?email_source=notifications&email_token=AABFOFJ3AKPSBWFMVSFKGZLQSYNVTA5CNFSM4JLBS6LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDT3QVA#issuecomment-552056916,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABFOFIHPW6SEC7B7IO6OELQSYNVTANCNFSM4JLBS6LA
.

--
Onorio Catenacci
http://onor.io
https://twitter.com/OldDutchCap

I think I goofed up the version--the "-otp-22" string is flagging it as a pre-release of some kind.  Is it ok if I  push it as "<IP_ADDRESS>" ?

I'd rather you didn't.
Let me do a little research; maybe there have been other variant build
packages on Chocolatey in the past.
I want people to be aware of the OTP 22 option but I am willing to bet
there are places using Elixir who would like 1.9.4 to test but may have to
stay on older versions of Erlang.  Hence I want both versions readily
available.
On Mon, Nov 11, 2019 at 11:07 AM Michael Schmidt<EMAIL_ADDRESS>wrote:

I think I goofed up the version--the "-otp-22" string is flagging it as a
pre-release of some kind. Is it ok if I push it as "<IP_ADDRESS>" ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ElixirWin/ChocolateyPackages/pull/53?email_source=notifications&email_token=AABFOFLFLXHGYCXDWMU2TYLQTF7LNA5CNFSM4JLBS6LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDXJF6Q#issuecomment-552506106,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABFOFJ7SHMAUY4TICBWEM3QTF7LNANCNFSM4JLBS6LA
.

--
Onorio Catenacci
http://onor.io
https://twitter.com/OldDutchCap

From what I've seen when there are variant builds (beyond x86/x64) the
general approach seems to be different packages.  But I think there may be
another better option.  Maybe a couple of better options.
1.) I agree that most folks are likely to want the OTP 22 build if they are
using 1.9.4.  So maybe we repush the 1.9.4-OTP22 as simply 1.9.4 and we
repush 1.9.4 as 1.9.4-preOTP22 or something like that.
2.) Unify the two packages and add a check for the presence of OTP22. This
isn't much different from detecting x86 vs. x64 and it shouldn't be that
difficult. If no Erlang is present then Chocolatey automatically grabs the
latest version of Erlang; if a version is present we can check the version
and if it's prior to 22, we install the 1.9.4-preOTP22. Otherwise we
install 1.9.4-OTP22.
How does that idea sound?
On Mon, Nov 11, 2019 at 11:12 AM Onorio Catenacci<EMAIL_ADDRESS>wrote:

I'd rather you didn't.
Let me do a little research; maybe there have been other variant build
packages on Chocolatey in the past.
I want people to be aware of the OTP 22 option but I am willing to bet
there are places using Elixir who would like 1.9.4 to test but may have to
stay on older versions of Erlang.  Hence I want both versions readily
available.
On Mon, Nov 11, 2019 at 11:07 AM Michael Schmidt<EMAIL_ADDRESS>wrote:

I think I goofed up the version--the "-otp-22" string is flagging it as a
pre-release of some kind. Is it ok if I push it as "<IP_ADDRESS>" ?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/ElixirWin/ChocolateyPackages/pull/53?email_source=notifications&email_token=AABFOFLFLXHGYCXDWMU2TYLQTF7LNA5CNFSM4JLBS6LKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEDXJF6Q#issuecomment-552506106,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABFOFJ7SHMAUY4TICBWEM3QTF7LNANCNFSM4JLBS6LA
.

--
Onorio Catenacci
http://onor.io
https://twitter.com/OldDutchCap

--
Onorio Catenacci
http://onor.io
https://twitter.com/OldDutchCap


Navigation - React Navigation 'focus' listener is not triggered the first time

Describe the bug
If I wrap the screen with register() method the React Navigation 5 'focus' listener is not triggered the first time. This happens also with React Component or PureComponent not just with Functional Component.
Code snippet
...
useEffect(() => {
    const unsubscribe = navigation.addListener('focus', () => {
      // The screen is focused
      // Call any action
      console.log("FOCUS DETAILS"); // Not triggered the first time
    });
    // Return the function to unsubscribe from the event so it gets removed on unmount
    return unsubscribe;
  }, [navigation]);
...

Repo for reproducing
Here you can find an example repository --> https://github.com/alessioemireni/react-native-bundle-splitter-example. It's a fork of your example repository.
To Reproduce
Steps to reproduce the behavior:

Open the App
See the console log. The 'Focus Home' is printed.
Click on 'Go to details'
See the console log. The 'Focus Details' log is not printed.
Go Back.
See the console log. The 'Focus Home' is printed.
Click on 'Go to details'
See the console log. The 'Focus Details' log is now printed.

Expected behavior
The React Navigation 5 'focus' listener should be triggered.
Smartphone (please complete the following information):

Desktop OS: [MacOS 10.15.7]
Device: [iPhone XR, Google Pixel 2 XL]
OS: [iOS 14.2, Android 11]
JS enginge [JSC, Hermes]
Library version [2.0.0]
React Native: [0.62.2]
React Navigation: [5.9.2]

Hi @alessioemireni
Thanks for the detailed issue!
I will have a look on that.

Hi @alessioemireni
I did some research around a problem and here is my results of the investigation.
First of all I think it's expected behavior. Let me explain why.
The basic idea behind this library is deferred components loading. And this loading is made in async style. What happens, when you wrap your screen within a register function? This function is simple HOC component, that represent stub of a screen during async loading. I. e. when you trigger a navigation to your screen, navigation will be triggered to a stub screen (which will later display real one once loading is finished).
Now let's go step by step of what happens under hood.

You trigger a navigation to Details screen.
Stub screen is displayed (and in this time it tries to load real one).
New screen is displayed (stub) and react-navigation triggers/emit focus event (but at this time you haven't loaded real screen yet -> you don't have any listeners in Details screen, because it actually wasn't loaded).
New screen is displayed (real one) but you don't receive focus event, since it was emitted before (when you didn't setup listeners).

I think at that time a new question will emerge in your head: "Why it works second time?". The answer is quite simple: once screen is loaded the library will automatically put it into cache and in the next time, when this screen will be used it will use version from cache, and an access to cache can be made synchronously (i. e. screen will be mounted in sync manner).
So answering on your question - If you want to receive focus event in Details for the first time too, you will need to use preload API. Look at the diff below:
diff --git a/src/screens/Details/index.tsx b/src/screens/Details/index.tsx
index 93c0670..ff82b19 100644
--- a/src/screens/Details/index.tsx
+++ b/src/screens/Details/index.tsx
@@ -1,10 +1,11 @@
 // import React from 'react';
-// import {register} from 'react-native-bundle-splitter';
+import {register} from 'react-native-bundle-splitter';

-import View from './View';
+// import View from './View';

 export default register({
+  name: 'Details',
   loader: () => import('./View'),
 });

-export default View;
+// export default View;
diff --git a/src/screens/Home/View.tsx b/src/screens/Home/View.tsx
index eaf3743..4ddbc53 100644
--- a/src/screens/Home/View.tsx
+++ b/src/screens/Home/View.tsx
@@ -1,6 +1,7 @@
 import React, { useCallback, useEffect } from 'react';
 import {Button, View, Text} from 'react-native';
 import { useFocusEffect } from '@react-navigation/native';
+import { preload } from 'react-native-bundle-splitter';

 // @ts-ignore
 function HomeScreen({navigation}) {
@@ -22,6 +23,10 @@ function HomeScreen({navigation}) {
     return unsubscribe;
   }, [navigation]);

+  useEffect(() => {
+    preload().component('Details');
+  });
+
   return (
     <View style={{flex: 1, alignItems: 'center', justifyContent: 'center'}}>
       <Text>Home Screen</Text>

I simply added a name for a screen (and commented out unnecessary code) and inside of Home screen I added preloading of the component. I put it in useEffect, but you can make it as you wish.
I highly recommend to use preload API. It eliminates the difference between synchronous and asynchronous code and helps make library integration almost seamless. The most common use cases for using the preloading API are:

loading additional screens during login (protected screens, that can be viewed only by authenticated user).
loading some screens during application start (useful when you want to reduce the waiting time on the native splash screen and when you have a screen with a spinner after the native splash screen (maybe you are downloading some additional data or something like that)).

But I feel like I'm getting distracted from the topic 🙂
If you use the preload API, there will be no problems.

@kirillzyusko thanks for your detailed explanation. I will check your patch and replace the register method with preload in my main project.
Why the behaviour is different with React Navigation 4? The focus was triggered the first time.
Another question. Why does the useFocusEffect react navigation hook work instead? The code snippet is commented in the repository example.
...
useFocusEffect(
     useCallback(() => {
       console.log("FOCUS HOOK DETAILS") --> triggered the first time
     }, [])
  );
...

@alessioemireni it's hard to answer. A lot of things were changed in 5.x comparison to 4.x...
Also it's hard to answer, why one thing works and other not. Need to debug and dive into react-navigation implementation in order to answer on this question 🙂

We decided to use an Hoc with useFocusEffect react navigation Hook due to the fact that that all Screens in main project use focus Listener. I'll close the issue.


Feature/5763 instance editor

Description
Implementation for the React-Monaco-Editor.
The form now supports toggling between the normal form, and the JSON-Editor with linting.
The form-toggle is only enabled when the editor contains parseable and valid JSON according to the provided JSON-schema.
Only caveat is for integers or floats when the value is empty, it is displayed/parsed as an empty string. The value will then be considered invalid integer.
The Editor doesn't render properly in JSDOM, Hence the coverage will be done in the E2E tests.
closes #5763
https://github.com/inmanta/web-console/assets/44098050/54838fe8-7b34-4466-9da7-75c308d950ae

Processing this pull request

Pull request rejected by merge tool. No change entry file found

Processing this pull request

Pull request rejected by merge tool. Failed to parse change entry file: Invalid yaml in change entry /tmp/tmpcuxrd3cp/changelogs/unreleased/5763-json-editor-feature.yml: mapping values are not allowed here
in "/tmp/tmpcuxrd3cp/changelogs/unreleased/5763-json-editor-feature.yml", line 1, column 25

Processing this pull request

Pull request rejected by merge tool. The tests for this branch did not succeed.

Processing this pull request

Merged into branches iso7, master in 060f8c1b50a980020b302dec96822d822f6205fc


What should php-semver-checker do in order to better integrate into current CI workflow?

The goal of this issue is to discuss how to make this tool into something that is useful to developers on a daily basis.
For the moment, it is pretty cumbersome to use the tool because you have to keep a version of your code you want to compare your current code against.
php-semver-checker-git is a command utility that uses php-semver-checker in the context of a git repository. Using git it could be possible to ask only for the files that have changes between two commits, read and compare only those.
In the context of other vcs (specifically non-dvcs), we're back to square one (keeping a copy at a specific point in time). Thus at this point, the burden is on the user to determine how he'll retrieve the code of the release he wants to compare against.
I'd be happy to discuss the various use cases people may have for this tool.

Honestly I think it you manage to pull it off an SVN adapter you're pretty much good to go: this is a PHP semver checker, almost all modern PHP packages that worry about semver are on either Github or Bitbucket, so Git covers already an enormous chunk of Packagist. I'd wait until someone actually requests a different adapter to worry about it and focus on the actual checking part until then.


Reduce logs in BrowserCacheManager

These logs are very noisy and not really useful, unfortunately.

Coverage decreased (-0.05%) to 83.703% when pulling b7a575115366ed0c83ce36f3e6f3f46c6e24b384 on reduce-browser-cache-manager-logs into b00e5be121a97e8ad5a610a21175b05e6858c3ac on dev.


Create Additional interpolation methods for tuning curves

Polynomials are great, but don't necessarily do a good job covering DFG over a very wide range. In addition, because of weird interference effects, it looks like the DFG mixer curve might not be as smooth as a polynomial. Consider splines, linear interpolation, etc.

There is already a linear interpolation method.
A spline interpolator is a good idea and not hard to do. I just created a working version - it will be in the master soon.


Key rotation and server availability check.

Hi,
i was wondering if there are any plans on adding a key rotation setting to the application?
Another cool feature would be for the app to check if it can reach the server before it rotates the key so that the key on the machine always matches the one on the server.
Thanks for a great tool!

Yes, there has been discussion on the topic on macadmins slack. It's a more complex topic to solve than it first seems.

Closing this in favor of #43 as this is two issues in one.


Unexpected translation transform results

I'm investigating using the SimpleElastix library to register graphic files. The images being registered will be substantially similar, and the translation required would be limited to either a straight translation or a euler transform (although rotation is always only in 90 degree increments).
To keep things as simple as possible to start with, I created a basic example consisting of a grey rectangle positioned on a 500px square canvas. I moved the rectangle by differing amounts, testing whether the software would pick up a translation transform correctly.
The results seem puzzling. Small differences in position are faithfully detected, however larger distances between the two shapes result in unfeasibly small transform parameters.
I am using the out of box transform settings given in the initial examples, in C sharp.
The following image is the fixed image:

Using the following image as the moving image (which has an offset on the rectangle of 20px x / 50y) the transform is correctly detected: params return as 20.057972  / 49.991271.

However using the following image (100px x / 200 y) it is not: the transformparameters return as 2.468495 and 0.924511.

Apologies if I have missed something obvious, but is this a bug or do I need to change any of the parameter map values to make the library correctly register images with greater translation offsets?

There has to be some kind of overlap or there is no gradient information to drive the registration. You can try to set AutomaticTransformInitialization to ON and use the CenterOfMass method (read details here http://elastix.isi.uu.nl/doxygen/parameter.html). This will initialize the registration so that the boxes overlap.


Linting doesn't appear to work

Bug report

Molecule and Ansible details
ansible --version
ansible <IP_ADDRESS>
  config file = /etc/ansible/ansible.cfg
  configured module search path = Default w/o overrides
  python version = 2.7.13 (default, Jan 19 2017, 14:48:08) [GCC 6.3.0 20170118]

molecule --version
molecule, version 1.25.0

Molecule installation method: pip
Ansible installation method: OS package

Desired Behaviour
Linting options should be respected
Actual Behaviour (Bug report only)
molecule.yml:
provisioner:
  name: ansible
  lint:
    name: ansible-lint
    enabled: False
    options:
      excludes:
        - /path/roles/nginx/tasks/setup-Ubuntu.yml
        - /path/roles/nginx/tasks/setup-FreeBSD.yml
ansible:
  playbook: tests/playbook.yml
dependency:
  name: galaxy
driver:
  name: docker
docker:
  containers:
    - name: nginx-test
      image: solita/ubuntu-systemd
      image_version: 16.04
      privileged: True
      ansible_groups:
        - group1
verifier:
  name: testinfra
  options:
    verbose: true

Relevant part of molecule --debug test:
/home/jerry/.local/bin/ansible-lint tests/playbook.yml --exclude .git --exclude .vagrant --exclude .molecule

I need to exclude some files so the test playbook passes the linting check, however the options don't seem to work. Actually, I realised that this was the config for v2, but I can't find any relevant config for v1..

This isn't supported on v1.  This is a v2 only feature.

Ah, OK then.
Thanks


Improve experience for really long settings descriptions

After https://github.com/Microsoft/vscode/pull/66179 😱

Some options:

Have a read more button when things get too long
Have string that appear only in the JSON/intellisense

Hey all, I'm finding this change really complicated to deal with.  When I copy the default setting to put in my own, it's empty, so the truncation makes this a very confusing setting to work with.

You only need to add settings that you want to add or remove from the list. If you want to see the full list for reference, you should be able to see the full list when you hover the setting name in the json editor.


Compile error from source of "safeAddToBufferSize"

Compile error from source in function "safeAddToBufferSize"
Hi,
I'm a engineer and I'm trying to build MuJoCo from source, and compile failed.
OS: ubuntu 20.04
compile : gcc 9.4.0
mujoco version : 220
After clone the repo, I run the command  "cmake .." in my build dir, and install some dependences by "sudo apt-get install libxinerama-dev libxcursor-dev libxi-dev", the "make" command the output error information as "compile error information" says.
"cmake .." output the information are list in "cmake information"

compile error information
[  1%] Building C object _deps/ccd-build/src/CMakeFiles/ccd.dir/ccd.c.o
[  1%] Building C object _deps/ccd-build/src/CMakeFiles/ccd.dir/mpr.c.o
[  1%] Building C object _deps/ccd-build/src/CMakeFiles/ccd.dir/polytope.c.o
[  1%] Building C object _deps/ccd-build/src/CMakeFiles/ccd.dir/support.c.o
[  1%] Building C object _deps/ccd-build/src/CMakeFiles/ccd.dir/vec3.c.o
[  3%] Linking C static library ../../../lib/libccd.a
[  3%] Built target ccd
[  4%] Building CXX object CMakeFiles/lodepng.dir/_deps/lodepng-src/lodepng.cpp.o
[  4%] Linking CXX static library lib/liblodepng.a
[  4%] Built target lodepng
[  6%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/global_r.c.o
[  6%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/stat_r.c.o
[  6%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/geom2_r.c.o
[  6%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/poly2_r.c.o
[  6%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/merge_r.c.o
[  8%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/libqhull_r.c.o
[  8%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/geom_r.c.o
[  8%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/poly_r.c.o
[  8%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/qset_r.c.o
[  8%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/mem_r.c.o
[  9%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/random_r.c.o
[  9%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/usermem_r.c.o
[  9%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/userprintf_r.c.o
[  9%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/io_r.c.o
[  9%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/user_r.c.o
[ 11%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/accessors_r.c.o
[ 11%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/rboxlib_r.c.o
[ 11%] Building C object _deps/qhull-build/CMakeFiles/qhullstatic_r.dir/src/libqhull_r/userprintf_rbox_r.c.o
[ 11%] Linking C static library ../../lib/libqhullstatic_r.a
[ 11%] Built target qhullstatic_r
[ 11%] Building CXX object _deps/tinyxml2-build/CMakeFiles/tinyxml2.dir/tinyxml2.cpp.o
[ 12%] Linking CXX static library ../../lib/libtinyxml2.a
[ 12%] Built target tinyxml2
[ 12%] Building CXX object _deps/tinyobjloader-build/CMakeFiles/tinyobjloader.dir/tiny_obj_loader.cc.o
[ 12%] Linking CXX static library ../../lib/libtinyobjloader.a
[ 12%] Built target tinyobjloader
[ 12%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_callback.c.o
[ 12%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_collision_box.c.o
[ 12%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_collision_convex.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_collision_driver.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_collision_primitive.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_core_constraint.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_core_smooth.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_derivative.c.o
[ 14%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_file.c.o
[ 16%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_forward.c.o
[ 16%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_inverse.c.o
[ 16%] Building C object CMakeFiles/mujoco.dir/src/engine/engine_io.c.o
/home/elonkou/ELONKOU/mujoco/src/engine/engine_io.c: In function ‘safeAddToBufferSize’:
/home/elonkou/ELONKOU/mujoco/src/engine/engine_io.c:361:21: error: missing binary operator before token "("
  361 |     && __has_builtin(__builtin_add_overflow) && __has_builtin(__builtin_mul_overflow)
      |                     ^
make[2]: *** [CMakeFiles/mujoco.dir/build.make:206: CMakeFiles/mujoco.dir/src/engine/engine_io.c.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1269: CMakeFiles/mujoco.dir/all] Error 2
make: *** [Makefile:141: all] Error 2

cmake information
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `qhull`
CHECK_FAILtarget `qhull` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `qhull`
--
-- ========== qhull Build Information ==========
-- Build Version:                             8.1-alpha1
-- Install Prefix (CMAKE_INSTALL_PREFIX):     /usr/local
-- Binary Directory (BIN_INSTALL_DIR):        bin
-- Library Directory (LIB_INSTALL_DIR):       lib
-- Include Directory (INCLUDE_INSTALL_DIR):   include
-- Documentation Directory (DOC_INSTALL_DIR): share/doc/qhull
-- Man Pages Directory (MAN_INSTALL_DIR):     share/man/man1
-- Build Type (CMAKE_BUILD_TYPE):             Release
-- Build static libraries:                    ON
-- Build shared library:                      OFF
-- Use shared library for linking apps:       OFF
-- To override these options, add -D{OPTION_NAME}=... to the cmake command
--   Build the debug targets                  -DCMAKE_BUILD_TYPE=Debug
--
-- To build and install qhull, enter "make" and "make install"
-- To smoketest qhull, enter "ctest"
--
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `tinyxml2`
CHECK_FAILtarget `tinyxml2` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `tinyxml2`
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `tinyobjloader`
CHECK_FAILtarget `tinyobjloader` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `tinyobjloader`
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `ccd`
CHECK_FAILtarget `ccd` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `ccd`
CMake Warning (dev) at build/_deps/ccd-src/CMakeLists.txt:9 (project):
  Policy CMP0048 is not set: project() command manages VERSION variables.
  Run "cmake --help-policy CMP0048" for policy details.  Use the cmake_policy
  command to set the policy and suppress this warning.

  The following variable(s) would be set to empty:

    PROJECT_VERSION
    PROJECT_VERSION_MAJOR
    PROJECT_VERSION_MINOR
    PROJECT_VERSION_PATCH
This warning is for project developers.  Use -Wno-dev to suppress it.

CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `absl`
CHECK_FAILtarget `absl::core_headers` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `abseil-cpp`
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `GTest`
CHECK_FAILtarget `gtest` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `googletest`
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `benchmark`
CHECK_FAILtarget `benchmark::benchmark` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `benchmark`
-- Failed to find LLVM FileCheck
-- git version: v1.6.1 normalized to 1.6.1
-- Version: 1.6.1
-- Performing Test HAVE_STD_REGEX -- success
-- Performing Test HAVE_GNU_POSIX_REGEX -- failed to compile
-- Performing Test HAVE_POSIX_REGEX -- success
-- Performing Test HAVE_STEADY_CLOCK -- success
CHECK_PASSDone
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `mujoco`
CHECK_PASSfound
CHECK_STARTmujoco::FindOrFetch: checking for targets in package `glfw`
CHECK_FAILtarget `glfw` not defined.
CHECK_STARTmujoco::FindOrFetch: Using FetchContent to retrieve `glfw`
-- Using X11 for window creation
CHECK_PASSDone
-- Configuring done
-- Generating done
-- Build files have been written to: /home/elonkou/ELONKOU/mujoco/build

could you please help me to solve this question, thanks very much.

Thanks. Looks like __has_builtin was only added to GCC in version 10 (changelog), and our continuous integration is using GCC 11.
I'll fix this soon, but for now, is it feasible for you to upgrade to a more recent version of GCC?

Thanks. Looks like __has_builtin was only added to GCC in version 10 (changelog), and our continuous integration is using GCC 11.
I'll fix this soon, but for now, is it feasible for you to upgrade to a more recent version of GCC?

@nimrod-gileadi Thanks a lot for your help, I solved the problem by upgrading to gcc-11. :)


Do we need to make a difference between unknown data and absent data?

In museum datasets, some information or data are simply missing, even if we know this information exists somewhere, like the birthdate of someone.
But sometime, this information does not exist, like the death date of someone still alive.
The problem is that in out model, there is no way to distinguish those two types of lack information. If the death date of someone is lacking in our dataset, it is not possible to know if we just haven't fully documented the record, or if this information does not exist.

I am not sure what you mean by unknown and absent data: do we mean differentiating between information that we know exists but is absent from the dataset (i.e. the cataloguer looked for the information but could not find it, but knows it is available somewhere) and information we know is not available anywhere (i.e. the cataloguer looked in other datasets as well as offline documentation and established that an information is not available)?
If so I think it might be useful so that if Museum A looked for a piece of information exhaustively another institution might trust their work and prefer to focus on tracking other data that would be as impactful but more readily available. I think it would be useful in the context of crowdsourcing as well as it would flag data that would be most interesting to investigate.

it's very difficult to represent in an open world. Recently discussed at CRM SIG and Linked Conservaiton Data workshops. It's hard to represent this kind of data in present day information systems

It seems that we would be relying on the source museum/institution to note whether the information is unknown or absent, yes? I don't know what kind of barrier to participation this would introduce if we were to add this kind of review as a requirement. Do you have a particular example or use case in mind that we could use to illustrate the problem and conceptually test out solutions?

In LOD usually you don't state "I don't know" because such statements are non monothonic in the face of OWA (and because what we don't know is infinite :-).
So I would not go for some generic "missing value" patterns. Wikidata has  novalue and unknown but their use is a bit controversial https://phabricator.wikimedia.org/T239414
If you know someone died but not when, make a Death event without TimeSpan.

I came across an example for this issue while working on MAC Artistes dataset:
For "Levy, Albert" (French Photographer), the museum left his Death Place blank, but input "inconnue" for his Death Date. He was born in 1864, so we know for certain that he had passed away (at this point in time).

I've read some interesting researches by the Antike Fundmünzel in Europa about managing uncertain data, published at the CAA:

Karsten Tolle, David Wigg-Wolf, "Uncertainty Handling for Ancient Coinage", in CAA2014: 21st Century Archaeology, Concepts, Methods and Tools - Proceedings of the 42nd Annual Conference on Computer Applications and Quantitative Methods in Archaeology, Oxford:Archaeopress, pp. 171-178
Karsten Tolle, David Wigg-Wolf, "Uncertain information, the Dark Matter of archaeology – use cases from numismatics" in CAA2019, not yet published

They propose multiple solutions, including:

RDF reification
CIDOC CRM E13 Attribute Assignment
Using the Uncertainty Ontology of the W3C (the solution they chose)

I will add those references to Zotero.

@stephenhart8 thanks for the third reference!
I think you should make a separate issue on uncertainty and Attribution Qualifiers. See

https://www.wikidata.org/wiki/Wikidata:WikiProject_Visual_arts/Item_structure#Use_of_creator_(P170)_in_uncertain_cases
https://www.wikidata.org/wiki/Wikidata:Property_proposal/Attribution_Qualifier
https://www.wikidata.org/wiki/Wikidata_talk:WikiProject_Visual_arts/Item_structure#Attribution_Qualifiers

Although the open world argument is strong, in the case of autority data, the distinction between unknown or absent information can make sense.


Add custom Duration and Timestamp types for conversion with serde

Currently chrono::Duration doesn't implement Seralize and chrono::DateTime serializes to an ISO 8601 string. This change is inspired by the toml crate's approach to preserving date formats across functions available in the Serialize trait to ensure that durations and timestamp are converted into the appropriate CEL types.
Using the newly exposed Duration and Timestamp types is only necessary for types using serde to convert to CEL, but maybe it could be confusing to keep track of where to use the chrono types vs the cel_interpreter types? But it seems like an unnecessary breaking change to use the new types in Value::Duration and Value::Timestamp 🤷🏼

I did some research and found the clever idea to use serde's newtype_struct name field as the indicator to do special type handling. Since serde's official recommendation is to silently unwrap newtypes, it's a great way to signal to a custom Serializer but remain compatible with most other implementations

Updated for the new chrono feature


K8S Error returned from Reconciler Status Update: "the object has been modified"

Sometimes Kubernetes returns an error when the Reconciler does an Update of Status: "the object has been modified". Luckily, a subsequent reconciliation always seems to occur and succeeds, but need to find out why this is happening.

I noticed this happened when I created a new one, which caused a Reconciliation in which I updated the Status (using the Status SubresourceWriter), and the resulting ResourceVersion was 3687148.
Then another Reconcile got called, and when it called Get(), it got the previous version 3687147 instead of 3687148. When it tried to update the Status this time, it got the error.
I wonder if the GitSync and the Status Subresource are stored in two different caches.

this looks to be someone who had the exact same issue: https://github.com/kubernetes-sigs/controller-runtime/issues/741
Most of these cases should stop if we set the resource's Watch to explicitly ignore Status() changes (meaning to only have Reconcile() called when there's a Generation change (this issue).

not sure why the PR didn't close this, so I'm closing manually


Move kube/inject out of Pilot

kube/inject is a shared library between istioctl and sidecar-injector, but is under the pilot directory. This PR breaks it out into pkg/kube/inject, and additionally moves the (single file) sidecar-injector binary out of pilot as well.

I think this is good, but better add codeowners as well.

+1
This is always something looking very unnatural when browsing code dir :)

Wouldn't be better to just move it to a separate repo ?
It is a pretty well-contained component, without a lot of deps.
On Wed, Aug 14, 2019 at 8:19 PM Jianfei Hu<EMAIL_ADDRESS>wrote:

+1
This is always something looking very unnatural when browsing code dir :)
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/16284?email_source=notifications&email_token=AAAUR2SADPBYKSNI763A3EDQETDL3A5CNFSM4ILZ5BA2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD4KXC2I#issuecomment-521498985,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAUR2WE2ZMANAHZZSTMFELQETDL3ANCNFSM4ILZ5BAQ
.

it would be one of the easiest components to break out into another repo, but until we have a way to deal with the release I don't think it's feasible right now.
With this change it will be pretty simple switch to another repo when we are ready

I generally don't like code moves/refactoring shortly after a freeze - we
had a big problem in 1.0 where cherry-picks stopped working.
Maybe we can hold on this for a week or 2 ?
I'm not sure what is the problem with the release - separate repo means
injector initially becomes a go mod/vendored dependency. Just
the go code.
Then we move the Dockerfile/Makefile for injector and start debating if it
really needs to be coupled with rest of Istio mega-releases, or
if instead it can be turned into a generic patch or template based
'transformation' tool that can support multiple versions of istio (and not
only)
On Thu, Aug 15, 2019 at 1:19 AM Liam White<EMAIL_ADDRESS>wrote:

@liamawhite approved this pull request.
—
You are receiving this because your review was requested.
Reply to this email directly, view it on GitHub
https://github.com/istio/istio/pull/16284?email_source=notifications&email_token=AAAUR2R52ALPZJTR77LM7ALQEUGSHA5CNFSM4ILZ5BA2YY3PNVWWK3TUL52HS4DFWFIHK3DMKJSXC5LFON2FEZLWNFSXPKTDN5WW2ZLOORPWSZGOCBUOPWQ#pullrequestreview-275310554,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAUR2QAWOYN6AR67Q3W7G3QEUGSHANCNFSM4ILZ5BAQ
.

I'm not sure what is the problem with the release - separate repo means injector initially becomes a go mod/vendored dependency. Just the go code.

And how do we release the sidecar-injector binary? What happens when the sidecar-injector repo depends on istio/pkg (the repo, because we would need to move the common injection logic there for istioctl to work), but istio/istio depends on a different version - when we make a release what SHA do we tag?
Which of the 4 (!) different ways we handle dependencies should we use?

Proxy reads from istio.deps
CNI reads from istio.deps, but actually checks out the head of the branch
Operator and Tools checks out head of the branch
API reads from go modules (not just using standard go tooling, we parse the go.mod file, extract the SHA, and then git clone at that SHA)

These are all problems that can be solved, but they aren't yet. Until they are, I don't think it is feasible to break this out into another repo.
Moving to a different repo would make cherry-picks even worse

This is going to make @douglas-reid 's WIP on adding injection bits more complicated to cherry pick.
I agree, please stop moving code around before the release is finished.

When is the proper time to make improvements to the code structure? We are always supporting 2-3 Istio releases at any given time

Any time outside of 2-3 week window of a release :)
We need to move many more cherry-picks during that time than usual.

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-security-k8s-presubmit-tests-master
cab88c5ecdba9f6e3b847d8449ed601361847492
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

I would think that a simple code move shouldn't be much of a problem for merging. Or is there something specific to Doug's PR?
@douglas-reid will this cause you problems?

/retest

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-security-k8s-presubmit-tests-master
cab88c5ecdba9f6e3b847d8449ed601361847492
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

@howardjohn: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-security-k8s-presubmit-tests-master
cab88c5ecdba9f6e3b847d8449ed601361847492
link
/test integ-security-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/test all

@howardjohn: The following tests failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

integ-security-k8s-presubmit-tests-master
cab88c5ecdba9f6e3b847d8449ed601361847492
link
/test integ-security-k8s-presubmit-tests-master

integ-new-install-k8s-presubmit-tests-master
cab88c5ecdba9f6e3b847d8449ed601361847492
link
/test integ-new-install-k8s-presubmit-tests-master

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

@nmittler i haven't tried a rebase yet. But I am worried about the divergence. Let me try now.