JSON integers are parsed as float

Godot version
v4.0.alpha8.official [cc3ed63af]
System information
Windows 10 64bit - Vulkan API 1.2.141 - GeForce GTX 1660 SUPER
Issue description
int are converted to float with Json.parse() method.
Godot 3.4 and 4.0 affected.
Steps to reproduce
See code in "Minimal reproduction project"
Minimal reproduction project
Based on documentation example (https://docs.godotengine.org/en/latest/classes/class_json.html):
func _ready():
	var data_to_send = ["a", "b", "c", 42]
	print("BEFORE = ", typeof(data_to_send[3]))
	var json = JSON.new()
	var json_string = json.stringify(data_to_send)
	# Save data
	# ...
	# Retrieve data
	var error = json.parse(json_string)
	if error == OK:
		var data_received = json.get_data()
		if typeof(data_received) == TYPE_ARRAY:
			print("AFTER = ", typeof(data_received[3]))
		else:
			print("Unexpected data")
	else:
		print("JSON Parse Error: ", json.get_error_message(), " in ", json_string, " at line ", json.get_error_line())

Output:
BEFORE = 2
AFTER = 3

Godot 3.4 poc:
func _ready():
    var data_to_send = ["a", "b", "c", 42]
    print("BEFORE = ", typeof(data_to_send[3]))
    var result = JSON.parse(JSON.print(data_to_send)).result
    print("AFTER = ", typeof(result[3]))

JSON does not have an integer or float type – it only has a number type, so all JSON numbers are parsed as floats for compatibility reasons.

If it hasn't been noted down already, it should probably be specified in the documentation, even if it... typically doesn't matter much? If assigned to integers, floats are casted automatically.

To be honest I was not aware of this since all langages I worked with preserve type for numbers. Since it's by design in JSON spec I think we can close this issue.
@Mickeon for the context I'm writing and API description where a type is expected (I use something inspired by JSON Schema) but I'll make a "number" type which match both.

If it hasn't been noted down already, it should probably be specified in the documentation, even if it... typically doesn't matter much? If assigned to integers, floats are casted automatically.

This is already documented here: https://github.com/godotengine/godot/blob/8a21f7231f0851aec4c06abee28a549b1f8083fd/doc/classes/JSON.xml#L67
Do you know of other places where this information could be added?

Do you know of other places where this information could be added?

Not really, JSON.print() makes note of it, as well as JSONParseResult and parse_json(). Really seems like that's it?

To be honest I was not aware of this since all langages I worked with preserve type for numbers.

Some languages like Python will make the number a int if there is no decimal point in the JSON text, and will always dump  float with a decimal point. But it'll face the same issue if the JSON text comes from another system that does not have this kind of special logic, e.g. JavaScript.

Just ran into this one today when parsing glTF node indices and finding out they were all floats.
It is common practice in many JSON libraries to decode values as int64 if they do not contain a decimal place, and provided that the value fits in an int64.
I understand the default behavior can't be changed for compat breakage, but it might be nice to consider adding an option the JSON class to permit decoding numbers as int64.
Should this be an implementation proposal?

Yes, if you think there is a use case for such a flag, you need to make a proposal.
And this issue should be closed by now, as there is nothing left to discuss: JSON doesn't support integers.

I just encountered this issue because I was reading data from JSON file and tried to use it to get values out of a Dictionary.
Despite my if value_from_JSON == 9001: checks, Godot threw an error when trying to get value:
Invalid get index '9001' (on base: 'Dictionary').
As this is closed issue, I wonder, where to continue this discussion in order to come up with something, that will help people avoid this in the future. Is there any relevant proposal open?
Few ideas:

Better error message: if engine errors out, then game stops running and engine probably has time to analyse what went wrong. Could just go through all the keys in dictionary and check their type. If no match is found, make error message say "lol none of the keys are of the type that you just tried to use (float)"
add optional argument to JSON's ˙parse_string() ̇, which when given as true,  would convert all floats without decimal places to int.

No that I know of, but as already established this is not a bug or even lacking details, nothing is broken here, this is as expected, and based on how JSON works
Please open a proposal if you are interested in this, otherwise please don't revive this thread as there's nothing further to do here 🙂

Hi. I recently encountered this issue. I have 0 as a value in my json file. then I put this value inside an array and I tried to check if 0 was in it. It wasn't. It took me quite some time to find out that the parsing casted it as a float, so 0 wasn't in it, 0.0 was. I think adding a warning or a note in the parse_string function could be useful so that this kind of issues doesn't lead people to this closed issue :) .

It's documented, and there wouldn't be possible to add a warning for this, it couldn't tell that you didn't really want to do that check
The parsing doesn't cast it to a float, it was a float, JSON only stores floats

I see, however I think it could be helpful to mention this. We already mention some specs that can be misleading, for instance csv escape of the doublequotes. "Double quotes within a text value can be escaped by doubling their occurrence." https://docs.godotengine.org/en/stable/classes/class_fileaccess.html#class-fileaccess-method-get-csv-line

Personally I think Godot should improve its handling of JSON numbers which are integer. Many other languages parse JSON numbers without decimal points as int64, but this needs to be discussed as a proposal, not a bug issue. Please see here for the proposal:

godotengine/godot-proposals#8830

As for the equality of 0 and 0.0 within an array, I do think that is something that GDScript could improve, but it would be very difficult to do this without compatibility break, so again this is something that can improve in terms of documentation or needs a proposal

As for the equality of 0 and 0.0 within an array, I do think that is something that GDScript could improve, but it would be very difficult to do this without compatibility break

If all non-typed array methods accounted for this they would be slowed down by a pretty large margin. The simpler workaround involves making use of static typing whenever applicable.

the problem is arrays and dictionaries read from JSON won't use static typing, so there is no way to trivially cast a loaded JSON Dictionary into a particular schema
Case in point, if I want to quickly scan the "children" array in a glTF node for a particular node index (integer), that will fail due to this issue because children are parsed as floats
But I think the best mitigation is to implement the above proposal 8830 to allow parsing integers from JSON documents as int64. It will solve most of the common cases of type mismatch.


OS X sandbox and dialog

Just read the Mac App Store Submission Guide, and it's awesome to be able to submit an electron app to the Mac App Store.
Since the resources which can be accessed by a sandboxed app are strictly limited, if my app want to access files inside users' home directory, do I just need to use dialog.showOpenDialog to ask the users select the files and then read them? If so, if I want to read these file again later (may be the next time the app is started), do I need show the dialog again or just read them directly since I've read them before?

Regarding the sandboxing, I think you need to add the following entitlement key com.apple.security.files.user-selected.read-only to your parent.plist. See Apple Docs

I suggest seeking help from the Community, the issues list is for bug reports and feature requests.
Regarding your question, I think it is more suitable to ask in some generic Apple developer forums.


Project needs a namespace

Fixed with https://github.com/awilsoncs/Untitled-Roguelike-Framework/pull/21


Unable to use VisualSlamNode with intra-process comms when running with composition

When running the VisualSlamNode with as composed in the same component container with e.g. the camera driver, it would be desirable to enable intra-process comms to enable transmitting the camera data more efficiently. However, this is not possible in the latest version v2.1.0, because there is apparently some topic with a transient local QoS included in the intra-process topics. Previously in 0.31.0-dp (which we just upgraded from) using intra-process comms worked.
I did not have time to thoroughly investigate which topic causes this, but I suspect the publisher to /tf_static (I did check most of the topics and everything that I saw had a volatile durability, while /tf_static obviously will have the transient local one). I am not sure why this node would need to publish static transforms, but if it is needed, it would be good to exclude it from the intra-process stuff.
For reference, here is how my launch of the node essentially looks like (this is part of a quite large launch file, so I'm leaving out some other nodes etc that are irrelevant for this issue):
def generate_launch_description():
    visual_slam_node = ComposableNode(
        name="visual_slam_node",
        namespace="camera_1",
        package="isaac_ros_visual_slam",
        plugin="nvidia::isaac_ros::visual_slam::VisualSlamNode",
        extra_arguments=[{"use_intra_process_comms": True}],  # including this line breaks the launch
        parameters=[
            {
                "denoise_input_images": False,
                "rectified_images": True,
                "enable_imu_fusion": False,
                "enable_debug_mode": False,
                "debug_dump_path": "/tmp/elbrus_1",
                "enable_slam_visualization": False,
                "enable_localization_n_mapping": False,
                "enable_landmarks_view": False,
                "enable_observations_view": False,
                "publish_map_to_odom_tf": False,
                "publish_odom_to_base_tf": False,
                "map_frame": "map",
                "odom_frame": "odom",
                "base_frame": "base_link",
                "input_base_frame": "base_link",
                "input_left_camera_frame": "camera_1_infra1_frame",
                "input_right_camera_frame": "camera_1_infra2_frame",
                "input_imu_frame": "camera_1_imu_optical_frame",
            }
        ],
    )
    cam_container = ComposableNodeContainer(
        name="camera_1_container",
        namespace="camera_1",
        package="rclcpp_components",
        executable="component_container",  # it does not matter which container you use for this
        emulate_tty=True,
        composable_node_descriptions=[visual_slam_node],
        output={"both": {"screen", "log", "own_log"}},
        arguments=["--ros-args", "--log-level", "info"],
    )
    return LaunchDescription([cam_container])

Here are the relevant parts of the logs that I see when launching with the above setup. Note the error about intraprocess communication only being allowed with volatile durability.
[INFO] [component_container_isolated-1]: process started with pid [82]
[component_container_isolated-1] [INFO] [1704372041.453758765] [camera_1.camera_1_container]: Load Library: /karelics_workspace/karelics_brain/package_ws/install/isaac_ros_visual_slam/lib/libvisual_slam_node.so
[component_container_isolated-1] [INFO] [1704372041.767271885] [camera_1.camera_1_container]: Found class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::visual_slam::VisualSlamNode>
[component_container_isolated-1] [INFO] [1704372041.767408176] [camera_1.camera_1_container]: Instantiate class: rclcpp_components::NodeFactoryTemplate<nvidia::isaac_ros::visual_slam::VisualSlamNode>
[ERROR] [launch_ros.actions.load_composable_nodes]: Failed to load node 'visual_slam_node' of type 'nvidia::isaac_ros::visual_slam::VisualSlamNode' in container '/camera_1/camera_1_container': Component constructor threw an exception: intraprocess communication allowed only with volatile durability
[component_container_isolated-1] [ERROR] [1704372043.184402808] [camera_1.camera_1_container]: Component constructor threw an exception: intraprocess communication allowed only with volatile durability

Yes, you are correct. There is a tf static transform publisher to publish a transform for map_pose_odom when enabling "odometry-only" mode using the SetOdometry service where there is no relation between map and odom frames otherwise. We're looking into how we could avoid this or having intraprocess comms option ignore it.

@hemalshahNV Thank you for the response and for confirming my suspicions about the static broadcaster. The fix should then be to simply disable the intra-process comms for the static broadcaster, which should take only a couple lines of code. Would you like for me to make a small PR about this?

Is this enhancement still planned?


Update Kartographer-1.1.0.ckan

satnet is the original author.

The bot reverted this based on the data pulled from SpaceDock. Can you add multiple authors there?

Hmmm, I guess I needed to fix this on NetKAN part just like I did with NoCrewRequirementContinued. That did not cause any troubles even though Orbinaut was never registered on SpaceDock.
So, do we cancel this request and create a new in NetKAN repo? Will this work?

So, do we cancel this request

That isn't necessary; you can just ignore this pull request, as it was already merged.

and create a new in NetKAN repo? Will this work?

Yes, I believe so.

Did that https://github.com/KSP-CKAN/NetKAN/pull/6013


Header is different on Issues.

Default header: http://prntscr.com/6jio0x
Issues header: http://prntscr.com/6jio6w
Also, the dropdowns don't work on the Issues header.

Thanks your report!

But I think this is duplicated to https://github.com/gogits/gogs/issues/650 . Please follow on that one!


[Automation] Generate Fluent Lite from Swagger mixedreality#package-2021-01

[Automation] Generate Fluent Lite from Swagger mixedreality#package-2021-01

API change check
APIView has identified API level changes in this PR and created following API reviews.
com.azure.resourcemanager:azure-resourcemanager-mixedreality


[Bug]: Can't scroll the preset in the demo page

I would like to take this

Contact Details
No response
What happened?
Just opened the Demo links in the website and clicked Presets
Some presets are hidden

Version
I have no idea
Which library are you using?
Vanilla (tsparticles)
tsParticles Configuration
None (this is in the website)

What browsers are you seeing the problem on?
Chrome
Relevant log output
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thanks for reporting it, I didn't tested it in a smaller screen.

👍🏻
The website is the website directory? because there is no start script, so I used npx serve . but styles are and scripts are not loaded

Yes, the website is there, it's published in the GitHub pages, so you can use VSCode live server with index.html. I use the live server of WebStorm for testing it, but I think VScode will work too.

I use WebStorm

Just needed to build before, fixed...


Big list of  animations doesn't scroll down

Godot version
3.5.2
System information
Windows 10, GLES2, GPU AMD Radeon R7 M260
Issue description
Very often (not always), when in AnimationPlayer Editor, if animation list is bigger than the screen, editor doesn't allow to scroll down to the bottom animations. Also, edit properties tab on the right, where current animation can be chosen happens the same.
Happens in 3.5.x and in 3.6 beta1
https://user-images.githubusercontent.com/100681249/235996049-22bd1c38-a3d5-4577-bafc-a990fb2d12dd.mp4
Steps to reproduce
Load a model with a bunch of animations in different ways (inherit scene, open normally, drag,...) an there is a moment where the animation list stops scrolling.
In attached MRP, 4 of 5 times happen only opening it.
Minimal reproduction project
Scrolling.zip

Side notes:
-Godot 4 stable and 4.1 dev1 works fine.
-version 3.4.x and previous with same example worked fine.
-Rest of scrollable lists work fine.
-Maybe unrelated, but when trying to navigate in the tracks, GPU reach 100% and even the editor FPS fluctuates and down to 3-8 fps.

-Maybe unrelated, but when trying to navigate in the tracks, GPU reach 100% and even the editor FPS fluctuates and fall to 3-8 fps.

You have a lot of tracks visible, which is quite a lot of strain even if it's just 2D rendering on a not-so-fast GPU.

Duplicate of #76289


Set a last_modified value on directory models if absent.

When attempting to serve a directory within JupyterLab (Hub?),
the notebook package unconditionally attempts to set a Last-Modified
header based on the last_modified key in the directory model.
This would fail if we served a directory which we did not have
Last-Modified info for:
Traceback (most recent call last):
  File ".../site-packages/tornado/web.py", line 1704, in _execute
    result = await result
  File ".../site-packages/tornado/gen.py", line 775, in run
    yielded = self.gen.send(value)
  File ".../site-packages/notebook/services/contents/handlers.py", line 120, in get
    self._finish_model(model, location=False)
  File ".../site-packages/notebook/services/contents/handlers.py", line 91, in _finish_model
    self.set_header('Last-Modified', model['last_modified'])
  File ".../site-packages/tornado/web.py", line 374, in set_header
    self._headers[name] = self._convert_header_value(value)
  File ".../site-packages/tornado/web.py", line 416, in _convert_header_value
    raise TypeError("Unsupported header value %r" % value)
TypeError: Unsupported header value None

This change adds a last-modified value of Right Now if there is not one
set already.

hey @thetorpedodog sorry for taking so long, i just tried it and couldn't cd inside cloud folder, no log/errors from jupyterlab. Installed back 0.0.24 and it works (with the known issues that we are trying to solve).

That’s odd; this change specifically fixed that for me. Is there a server stood up where I can see what’s going on?

@thetorpedodog Just deployed it in the staging server you can test it yourself had the same result as testing it locally (double clicking the cloud folder did nothing), and i don't get any log/errors.

After way too much digging, I figured out what the issue is:

This change does fix the server-side issue. Instead of returning an error, now it returns the response you note above.
Deep within the bowels of Jupyter is the validateContentsModel function:function validateContentsModel(model) {
    validate_1.validateProperty(model, 'name', 'string');
    validate_1.validateProperty(model, 'path', 'string');
    validate_1.validateProperty(model, 'type', 'string');
    validate_1.validateProperty(model, 'created', 'string');
    validate_1.validateProperty(model, 'last_modified', 'string');
    validate_1.validateProperty(model, 'mimetype', 'object');
    validate_1.validateProperty(model, 'content', 'object');
    validate_1.validateProperty(model, 'format', 'object');
}

It simply will not accept null as a created date. For whatever reason, the error that is thrown from this function is swallowed and never logged anywhere; I was only able to find it by stepping through with a debugger.

The other stuff—that all the paths are the same—is also a bug (also fixed) but not the immediate cause of these problems.


Fix Fire Stations' distances

Fire station distances' variables need to be 1km, 5km, 10km, 20km. Right now they are 10km, 50km, 100km, 200km.

While working on this, I realized I had to make some changes to the database setup because our sponsors updated the data again. This should probably be a task within itself because it looks like now other things are breaking. Might have to come back to this task later.
{t:60}


Lower power sleep

This branch sleeps at under 100mA.

turns off audio and headphone amp
turns off clock to DAC
slows down powerbutton scanning

More could be done by clocking down the processor or switching to one of the real low power states but < 100mA seems good for now.

@ggVGc could you have a look at whether the initialisation of the dacs can be improved so that it is also compatible with FlexIO? I've now made dac1 global in main.


Add wildcard support to resource rules

This PR adds support for "*" wildcard matching for resource exclusion and config for #4.

@onebytegone did you see the build failures?

@jthomerson should be fixed now. /me didn't see the changes to the eslint config 🤦♂

Coverage increased (+10.4%) to 49.306% when pulling d267d57e88c83e088d8a8a6371957ee81787a620 on wildcard_resource_rules into b7f0e0464b42a67ebde19a339251cc2441699a23 on master.

Coverage increased (+9.9%) to 49.655% when pulling 73a8cb312b011edfc1850fa34d81f7d798484c96 on wildcard_resource_rules into 453d8e7eea4bcf5973c4825fba309c09f3e3f0d9 on master.

@jthomerson this has been rebased in view of the merge of #8

@jthomerson FYI: The last push has most of the code changes, still needs the README updated with examples.

Coverage increased (+8.9%) to 53.846% when pulling 65f2903aaea1bfb7ea533d103250df6b49d37ab8 on wildcard_resource_rules into c6987aa527ed7c7580f3bb58947e950e7b5de9d4 on master.

@jthomerson Examples have been added to README for wildcard usage

Coverage increased (+8.9%) to 53.846% when pulling 1758b74b0ec338355ee3c72616f3f0328b8f184c on wildcard_resource_rules into c6987aa527ed7c7580f3bb58947e950e7b5de9d4 on master.

Coverage increased (+8.9%) to 53.846% when pulling ff056cc5fa18f1d70e6c7c47541a430443c6d910 on wildcard_resource_rules into c6987aa527ed7c7580f3bb58947e950e7b5de9d4 on master.


feat: Add docs input source, start converting documentation

Creates a new input type docs which will return Parsec API documentation.  Started converting documentation over from legacy website.

:tada: This PR is included in version 2.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


ColoradoHydroBaseRest test review

Recent enhancements to ColoradoHydroBaseRest web services made by the State need to be reviewed and appropriate changes made to tests and code.

I reviewed all of the tests and updated the tests and code to ensure tests pass.  Issues were identified and made known to the State to resolve.  Keep this issue open until the State responds to that feedback.

Some issues remain due to the difference in how HydroBase database and web services treat diversion record data.  Funding needs to be appropriated to address these issues.


[Feature Request] File Upload

Is your feature request related to a problem? Please describe.
I wanted to bring to your attention a feature that seems to be missing from the Nuxtlabs UI. Currently, I am facing a challenge while trying to create a form that involves file uploads. It appears that there is no built-in file upload feature available in the UI, which is causing a hurdle in my development process.
Describe the solution you'd like
Something similar to:
https://primevue.org/fileupload/
https://vuetifyjs.com/en/components/file-inputs/

Thanks for the feedback, we can keep it in the roadmap.
In the meantime you can anyway use <input type="file" /> and style it yourself, see example on TailwindCSS docs: https://tailwindcss.com/docs/hover-focus-and-other-states#file-input-buttons

I used @zagjs/file-upload and it worked so well.

I used Tailwind

How would you feel if a <UInput type="file" /> looked like this in both white and gray colors:

Went with this design in the end:


npm run lint doesn't work correctly

For now, npm run lint throws the warning below. (FYI: this also happens in travis). It's caused by we enabling rule:strict-type-predicates without having strict:true in tsconfig.json(see: https://github.com/IBM/kui/pull/1338).  By adding strict:true, we could see the a bunch of real errors. We should either work around this by disabling the rule or fix the errors.
npm run lint
./packages/kui-builder/bin/lint.sh
strict-type-predicates does not work without --strictNullChecks

Note:
rule:strict-type-predicates conflicts with type guard
e.g.
export function isSuccessfulCommandResolution (resolution: CommandTreeResolution): resolution is ICommandHandlerWithEvents {
  return (resolution as ICommandHandlerWithEvents).eval !== undefined
}

strict-type-predicates throws error: Expression is always true for the implementation above.
Reference: https://github.com/palantir/tslint/issues/4467


suggestion: counties numbers should be also harmonised on the basis of tests done

Tests per capita differ a lot in some counties. Saaremaa has 4 times more tests per capita than Harjumaa and many counties have done 2 times less tests per capita than Harjumaa. That increases positive tests per 10 thousand people to much higher level than it should be.
So maybe county graphs should have also view where cases are are harmonised on the basis of tests done per capita somehow.
Regards
hk

We already do this for total cases, so it is quite straight forward to do on a per county basis as well, there are a few things ahead of this, but I will keep it in mind and try to implement soon.

Can you share a link or example of what you would like this to look like?

Can you add an backward light gray item "Amount of capita" per county and second y-axis for them.
Also remove (%) from head, as can choose Abs.

hi,
I would imagine graph like this:
Table name: positive cases per county
X – Day
Y – % of positive tests on that day
Lines – Counties
It would show trend of new positives as percentage for every county and will put numbers of new cases in every county in context.

This seems very similar to #41, so I am merging this issue with that one.


Communication Exploration

Investigate ways communication primitives can simplify development

Here's an idea: maybe we should have a short ~1-2 page deliverable for research tasks like this. It will help us build our case as to the decisions we made and the alternatives available. It could include what's out there, whose done what, how did that work for them, recommendation, a list of papers or whatever else.

Sounds like a good idea. How about researchy tasks result in the first pass at a design document detailing this stuff.

Can you expand on what is meant by "communication primitives"? Is this at all related to the sort of thinking in #284?

By communication primitives we mean making communication an explicit and fundamental operation in the language, as much as "join" or "union". And by communication, we mean it in the literal sense like "send an email to everyone in this table" or "send yourself a text message when a Facebook friend who doesn't live in your city is currently in your city"


[Add new project] services required

So #133 covers this part. I assign it to me. The PR provides the API required to add a new project.

Related to https://github.com/fastlane/ci/issues/162

Let's close this for now


Setting issues

SettingsManager controls transaction for SettingsCatalog. So checkpoints can’t recover settings due to nested transaction.
Can’t add new settings after Peloton booting. So we can’t implement SET command.
There is no update function in SettingsCatalog.
Why setting control functions are static?

So I propose setting refactoring for SettingManager and SettingsCatalog. Basically, I think setting user should control all functions through SettingManager, not static like other manager. Refactor points are below:

All setting values are controlled through SettingsManager (Set/Get value, Add setting)
A TransactionContext is passed through the function argument.
Implement update function in SettingsCatalog.

There is a bunch of Set methods in SettingsManager. I don't know how they interact with transactions though.

Set methods are just update methods for existed setting value using setting_id. These can not create new settings actually.

What new settings do you wish to add (after the system has booted)?

I wanted users to be able to set original variables through SET command in psql or config files. But I found that Postgres can't set the original variables. I misunderstood that. Delete its line.


solve the HTML rendering challenge for the submission feedback (file)

direct to A+ - has been discussed as a "quick-and-easy-for-now-solution"
direct to local browser
render inside IJ IDEA

Could JBCefBrowser be utilized for rendering feedback inside IDEA?

Could JBCefBrowser be utilized for rendering feedback inside IDEA?

rendering of the HTML by itself is now a big deal, the problem that I see, is, that there is also CSS, that we don't get from the API. so if comparing the way things would look in the A+ Web UI and locally I'd go with the simpler browser option.

what we could do is separate this challenge into two parts, where we first get the "dummy" redirection to the A+ web page, and then, after everything is done and we're happy, we could try this browser feature, that indeed looks curious :cucumber:

Yes, JBCefBrowser would be the way to go, and it is also available and enabled by default starting from 2020.2.
I agree that for now just opening the browser is the way to go, since the feedback without the css looks horrible (although getting the css shouldn't be too tricky).


fix: Switch chain to rmrk2 on rmrk2.kodadot.xyz

Thank you for your contribution to the KodaDot NFT gallery.
👇 _ Let's make a quick check before the contribution.
PR Type

[ ] Bugfix
[x] Feature
[ ] Refactoring

Context

[x] Closes #5495
[ ] Requires deployment <>

Before submitting pull request, please make sure:

[x] My contribution builds clean without any errors or warnings
[x] I've merged recent default branch -- main and I've no conflicts
[x] I've tried to respect high code quality standards
[x] I've didn't break any original functionality
[ ] I've posted a screenshot of demonstrated change in this PR

Optional

[ ] I've tested it at </bsx/collection>
[ ] I've tested PR on mobile
[ ] I've written unit tests 🧪
[ ] I've found edge cases

Had issue bounty label?

[x] Fill up your KSM address: Payout

Community participation

[x] Are you at KodaDot Discord?

Screenshot 📸

[ ] My fix has changed something on UI; a screenshot is best to understand changes for others.

I have tested on both rmrk2.localhost:9090 and rmrk.localhost:9090. They will auto-choose rmrk2 chain when open page.

😍 Perfect, I’ve sent the payout
💵 $30 @ 32.51 USD/KSM ~ 0.923 $KSM
🧗 Caiv9TbPz68q5dC8EcHu5xKYPRnremimGzqmEejDFNpWWLG
🔗 0x9c86adb8b6fb753dee1a6f68509ca9f7844e851b1cd7f0a36b677e1be778aa20
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Timemapper not loading data

For the timemap http://timemapper.okfnlabs.org/bj_daugherty/ndts2017-church-history-timeline, it seems unable to load the data. It stalls with the message, "Loading data..." I suspect this is the same as issue #132 and/or issue #154, but unfortunately I still haven't been able to resolve it after looking at those. The spreadsheet is https://docs.google.com/spreadsheets/d/16YEzLfQYw7NCiYibO3W_rxzrT2MklmWShsvuVbUJpzE/edit#gid=0
Any help is appreciated.
Thanks,
Brad

I have had similar problems, and suggest you check :
The URL for your Google Spreadsheet should be the "Share" link. You have the "edit" on the end, which suggests that you copied it from you browser window.

I'm having a similar issue, but with the "Share" link. There's no endless loading, but in recent Chrome nor Firefox will it load any visual elements, except from the 'next' arrow. Three main divs are there (slider-container-mask, nav-next and map, but they're empty, white. Is this a problem with reading the link, or with the actual sheet? (I didn't change headers, and assume column positions don't matter since the default example and template differ, too.)
Thanks for any help

I'm having the same issue, 'loading data' leads to a blank screen with only the 'next' arrow. http://timemapper.okfnlabs.org/runedyret/video-events-in-world-politics-timeline
with source data https://docs.google.com/spreadsheets/d/12WDfmY0Mgb64cD-DzS0SR6Ag_d80ochxkSBMvpZd5HA/edit?usp=sharing


Remove button border-radius in Chrome 62+ on macOS.

Chrome 62 buttons have been restyled to resemble macOS buttons:
https://www.chromestatus.com/features/5743649186906112
Other browser vendors haven’t signalled interest.
This leads to cross-browser inconsistencies in existing UIs.
This patch matches developer expectations of buttons not having border-radius set by user-agents.

Does this change also impact border-width? Per https://bugs.chromium.org/p/chromium/issues/detail?id=546679#c13

Ah yes, that's right. Height of the button will remain the same, but an extra pixel given to border instead of padding?
How would Normalize intend on handling cosmetic differences like that, as opposed to border-radius? I feel border radius would have more unexpected consequences.

Closing as Chrome reverting change. See: https://github.com/necolas/normalize.css/issues/706#issuecomment-342108033

Might want to re-open since it looks like Chrome actually did go live with this. See https://github.com/necolas/normalize.css/issues/706#issuecomment-344995038

This change landed in Chrome 62 but will be reverted in Chrome 63 which will arrive around Dec 5 (see https://www.chromium.org/developers/calendar).

Chrome 63 has just been released.


Adaptive Card parser fails to parse a valid schema

Platform
What platform is your issue or question related to? (Delete other platforms).

Android
iOS

Author or host
Host
If you're an author, who are you sending cards to?
Version of SDK
1.1/1.0.3
What version are you using? Ex: NuGet 1.0.2, or latest master, etc...
Issue
Adaptive Card parser fails to parse the below body on mobile clients,
web parser works fine and renders the card
{"body":[
{"type":"Image"},
{"items":[{"size":"medium","weight":"bolder","type":"TextBlock","text":"🤝 You've been paired!"}],"type":"Container"},{"items":[{"items":[{"size":"large","text":"This week you've been paired with Ankit Chaudhary.","weight":"bolder","type":"TextBlock","wrap":true}],"type":"Container"},{"type":"TextBlock","text":"Ankit Chaudhary works as Software Engineer 2 in Microsoft Teams _ Engineering 1608 out of Bangalore-Ferns-Mirpl\/7143.","wrap":true},{"columns":[{"width":"stretch","items":[{"url":"https:\/\/media.giphy.com\/media\/3o85xAlXSDMvtuDaBq\/giphy.gif","type":"Image"}],"type":"Column"},{"width":"stretch","items":[{"type":"TextBlock","text":"Tap the buttons below to message Ankit or setup a meeting. Consider going for 🍕 (lunch) \/ ☕ (coffee) \/ 🛣 (walk), or just meet via a 💻 (Teams meeting) if they are remote!","wrap":true}],"type":"Column"}],"type":"ColumnSet"}],"type":"Container"},{"size":"small","text":"ℹ To learn about Social Leaderboard just say `leaderboard` 🏆!","type":"TextBlock","wrap":true}],"type":"AdaptiveCard","actions":[{"url":"https:\/\/teams.microsoft.com\/l\/chat\/0\/0?users=ankitc@microsoft.com&message=👋%20Hi%20there,%20we%20were%20paired%20up%20by%20Meetuply%20🤖.%20Are%20you%20available%20sometime%20this%20week%20for%20a%20chat?","title":"💬 Chat with Ankit Chaudhary","type":"Action.OpenUrl"},{"url":"https:\/\/teams.microsoft.com\/l\/meeting\/new?subject=🤝%receiverName%%20-%20Ankit%20sync&attendees=ankitc@microsoft.com&content=Sync%20up","title":"📅 Create meeting","type":"Action.OpenUrl"},{"url":"https:\/\/forms.office.com\/Pages\/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbRyo7e2tLLHVBhYJByeaFwbVUMlhNOU1DT004Q0lYTVlFWk0wVFNRVjRVUy4u","title":"💡 Feedback","type":"Action.OpenUrl"},{"title":"❌ Opt-out from pair ups","data":{"optout":true},"type":"Action.Submit"}],"version":"1.0"}

url is a required property for Image element which is missing in the above payload (First Element).
iOS renders properly when the empty image element is removed from the payload.

@BalajiR are we saying this was a user-error? Regardless, @dclaux / @matthidinger / @RebeccaAnne : should we make parsing errors easier to debug/diagnose? I would have expected @Aditya0603 to have received an explicit parse error (also is this executed on teh host or publisher side?)

This seems like we would be addressing this with Issue #784.

This bug need #MsftTeams-Integration label @shalinijoshi19


riscv-asm.md: add missing pseudos for calls

I'd prefer listing the two call macros on separate lines.  But that doesn't prevent merging this for forward progress.


fix: instances of error within array should be nested in object property

As discussed offline, I think this logic is getting complicated, and it's fine to make the caller call redact separately for each logging argument. I'm okay with errors in an array not being nested.


ci: remove snyk

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

v6.0.0
GitHub release

Your semantic-release bot :package::rocket:


Trying to fix command rendering of '--format "{{ .Names }}"'

--format "{{ .Names }}" is showing up in the markup but is rendering as --format "" in the published version. Added {% raw %} tags to try to fix.

Proposed changes

Unreleased project version (optional)

Related issues (optional)

Deploy preview for docsdocker ready!
Built with commit f354856f5b52b6a96c77b42609ee40bbeb8dfa0f
https://deploy-preview-8677--docsdocker.netlify.com


[TACHYON-544] Improve Code In PrefixList

https://tachyon.atlassian.net/browse/TACHYON-544
This patch replaces the for loop with for each loop over mInnerList in inList method.

Can one of the admins verify this patch?

Thanks!


Leverage exisitng infrastructure

Currently a canopy test is a self-built executable producing its own test report file. Allowing canopy tests to be run from an existing test-runner (e.g. NUnit) will help leverage existing CI infrastructure and standard test report formats.

Heh you closed this just as I was thinking about how NUnit integration might work. Did anyone get any where with this?

You can just use nunit or xunit and not use the canopy.runner stuff.  You lose some nice stuff like WIP mode but it may be worth it.  Personally I never found test runners in Visual studio that enjoyable to use and I prefer command line.  Minority opinion though.

I do like the WIP feature but there is the whole org adoption problem I need to worry about. One of the nice things with NUnit is that we can re-run previously failed tests that I am guessing is tricky from a console runner.

I have support for that, it writes the failed test to a flat file then reads them and runs them first.
https://github.com/lefthandedgoat/canopy/blob/master/tests/basictests/Program.fs#L13
But yah you can use nunit, give it a shot.

You are rocking it. I'll give it a try.


Version updates for spack-stack-1.6.0<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>

Summary
Various version updates for spack-stack-1.6.0:

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>(only added to spack, not used yet in our environments/templates)
<EMAIL_ADDRESS>(reduce number of versions in unified-dev and skylab-dev templates to only two)
<EMAIL_ADDRESS>Bump<EMAIL_ADDRESS>(EMC version) to<EMAIL_ADDRESS>in unified-dev and skylab-dev templates

Testing

[x] Built unified-env on macOS with<EMAIL_ADDRESS>and<EMAIL_ADDRESS>
[x] JEDI Skylab testing (qg-fullDA.yaml)

[x] CI builds

Applications affected
All applications that will used spack-stack-1.6.0
Systems affected
All systems that will used spack-stack-1.6.0
Dependencies

[x] waiting on https://github.com/JCSDA/spack/pull/378

Issue(s) addressed
Working towards https://github.com/JCSDA/spack-stack/issues/895
Resolves https://github.com/JCSDA/spack-stack/issues/886
Resolves https://github.com/JCSDA/spack-stack/issues/859
Resolves https://github.com/JCSDA/spack-stack/issues/851
Resolves https://github.com/JCSDA/spack-stack/issues/848
Checklist

[x] This PR addresses one issue/problem/enhancement, or has a very good reason for not doing so.
[x] These changes have been tested on the affected systems and applications.
[x] All dependency PRs/issues have been resolved and this PR can be merged.

@AlexanderRichert-NOAA I believe you are at AGU this week, I'll proceed with one approval from EPIC for this.


Use gh api command to create blobs

This command is more likely to catch errors that are missed by curl.
Change-type: patch

I self-certify!


Catch "File size exceeds maximum allowed size"

I expected this error to be caught with a try/catch:
MultipartParseError: File size exceeds maximum allowed size of 10485760 bytes
Tested with https://github.com/mjackson/multipart-parser/blob/main/examples/node/server.js. When the error occurs the server crashes.

Everything works fine for me on node 20. Which version of node are you on?
I did just push an update to the node example that adds the Connection: close header to the response in case of an error, so the input stream doesn't hang. But I don't think that's related.

Thanks for the feedback!
I tested it on Node 22.1.0. I just tried with 20.16.0 with the same result. Another error "MultipartParseError: Request is not a multipart request", is caught correctly when I trigger an error by removing enctype="multipart/form-data" from the form in the example.
Here is the terminal output with the error when I run pnpm start and then uploads a big file in Safari or Chrome, if that helps.
pnpm start

> multipart-parser-node-example@ start /Users/perifer/Downloads/multipart-parser-main/examples/node
> node server.js

Server listening on http://localhost:3000 ...
file:///Users/perifer/Downloads/multipart-parser-main/dist/lib/multipart.js:302
                throw new MultipartParseError(`File size exceeds maximum allowed size of ${this.#maxFileSize} bytes`);
                      ^

MultipartParseError: File size exceeds maximum allowed size of 10485760 bytes
    at #writeBody (file:///Users/perifer/Downloads/multipart-parser-main/dist/lib/multipart.js:302:23)
    at MultipartParser.push (file:///Users/perifer/Downloads/multipart-parser-main/dist/lib/multipart.js:241:36)
    at MultipartParser.parse (file:///Users/perifer/Downloads/multipart-parser-main/dist/lib/multipart.js:134:43)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Node.js v20.16.0
ELIFECYCLE  Command failed with exit code 1.

I'm sorry but I just tried running the node example on node 22.1.0 and 20.16.0 and I can't reproduce the issue you're experiencing on either one.
FWIW I just released version 0.4.0 which may give you slightly different results if you'd care to check again.
I'm going to sync with my team tomorrow and ask if anyone else can reproduce what you're experiencing.

I did some more test. I could trigger the error by changing the maxFileSize setting. With a low enough setting, the server never crashed. But as I increased it the server started crashing. Here is a codesandbox that I could reproduce it on:
https://codesandbox.io/p/devbox/stoic-sea-72cmwm
maxFileSize is set to 100000. With that high setting it seems to crash consistently. Less so with a lower setting. At least it seems so in my limited testing.
I tried with this image: https://en.wikipedia.org/wiki/Cat#/media/File:Cat_August_2010-4.jpg

Thanks for the detailed info! I was able to reproduce the crash and this should be fixed in 0.4.2


3506 expressions tissues

This PR solves the tissue transformation specified in 3506

agregar transformacion tissues
Update code comments

This is listed as issue in the release board. Should I remove it from there?

Go ahead!


[FEATURE] Display full process checklist numbering on UI

Is there an existing issue for this?

[X] I have searched the existing issues

Description
To display the full numbering in the process checklist UI, similar to how it is displayed in the summary report. (i.e. x.y.z instead of y.z)
As-is:

To-be:

Is your feature request related to a problem/limitation?
No response
Describe the solution you'd like
No response
Alternatives
No response
Additional Context
To support the recent mapping of AI Verify framework to ISO/IEC 42001 and future mapping exercises, we want to allow users of the AI Verify Toolkit to easily reference specific process checks listed in the crosswalk.
Related Issues/PRs
#287

Issue has been fixed. Closing this issue.


Add APIs to support working with custom and derived atoms

Description
See changesets.

/release:next

/release:next

/release:next

/release:next

/release:next

/release:next

/release:next

/release:next

/release:next


Exception: Unable to cast DateTime to ValueTypeHolder

I created a MethodInvoker for DateTime.ToString().  When I call this as Invoker(DateTime.Now, null), I get this exception:
System.InvalidCastException: 'Unable to cast object of type 'System.DateTime' to type 'Fasterflect.Emitter.ValueTypeHolder'.'

Am I doing something wrong, or is this a bug in Fasterflect?

Method WrapIfValueType solves the problem. Code
  DateTime.Now.WrapIfValueType().CallMethod("ToString")

works for me. Very strange, I cannot find any docs about the method and type ValueTypeHolder.


Unique constraint violation in sqlite

I saw this exception today. I have the latest dev version: com.couchbase.lite:couchbase-lite-android:1.1.0-532
Is it because of normal replication conflict, or it is a bug?
06-04 15:03:22.968  19524-20849/com.droid4you.application.wallet E/SQLiteDatabase﹕ Error inserting doc_id=29 revid=1-180469feb76af1618ebd52ee2488de92 no_attachments=true deleted=false current=true json=[B@34adc87d
android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: revs.doc_id, revs.revid (code 2067)
at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:782)
at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788)
at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86)
at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1471)
at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1341)
at com.newrelic.agent.android.instrumentation.SQLiteInstrumentation.insert(SQLiteInstrumentation.java:115)
at com.couchbase.lite.android.AndroidSQLiteStorageEngine.insert(AndroidSQLiteStorageEngine.java:133)
at com.couchbase.lite.Database.insertRevision(Database.java:3901)
at com.couchbase.lite.Database.forceInsert(Database.java:4464)
at com.couchbase.lite.replicator.PullerInternal.insertDownloads(PullerInternal.java:507)
at com.couchbase.lite.replicator.PullerInternal$1.process(PullerInternal.java:101)
at com.couchbase.lite.support.Batcher.processNow(Batcher.java:203)
at com.couchbase.lite.support.Batcher.access$100(Batcher.java:24)
at com.couchbase.lite.support.Batcher$1.run(Batcher.java:41)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)

Hi @biokys Thank you very much for bug report
revs table record should be unique by doc_id and revid. UNIQUE (doc_id, revid)
https://github.com/couchbase/couchbase-lite-java-core/blob/master/src/main/java/com/couchbase/lite/Database.java#L184-L192
Some reason, CBL tried to insert revs with doc_id=29 and revid=1-180469feb76af1618ebd52ee2488de92 twice.
Potential reasons:

CouchDB has duplicated data (I believe you are using CouchDB)
CBL requested revs (doc_id=29 and revid=1-180469feb76af1618ebd52ee2488de92) twice

I need some helps from you.

Is this 100% reproducible?
Could you please check if duplicated revs exists in CouchDB?
Could you please try 1.1.0-521? http://files.couchbase.com/maven2/com/couchbase/lite/couchbase-lite-android/1.1.0-521/

Explanation for 3). To fix couchbase/couchbase-lite-android/issues/597, I committed https://github.com/couchbase/couchbase-lite-java-core/commit/b9ce9ad08ff0feeff52a7ed24437297dcd27600c . I guess this change might cause disorder  document request during pull-replication.
Thanks,
Hideki

I catch more info before exception. It may help you. I can see just one document to be pulled, but two tries to insert revision.
It happens, if i create document on a remote couchdb through REST API and this remote endpoint is continually replicated with CBL Android.
06-04 20:45:39.780  20500-20787/com.droid4you.application.wallet D/ChangeTracker﹕ com.couchbase.lite.replicator.ChangeTracker@6938889: changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.780  20500-20787/com.droid4you.application.wallet D/Sync﹕ changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.780  20500-20787/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@3f45aa06: adding rev to inbox {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee}
06-04 20:45:39.780  20500-20783/com.droid4you.application.wallet D/ChangeTracker﹕ com.couchbase.lite.replicator.ChangeTracker@150dc178: changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.780  20500-20783/com.droid4you.application.wallet D/Sync﹕ changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.781  20500-20773/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Status: REPLICATION_IDLE
06-04 20:45:39.782  20500-20773/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Type: PULL
06-04 20:45:39.782  20500-20787/com.droid4you.application.wallet D/ChangeTracker﹕ com.couchbase.lite.replicator.ChangeTracker@6938889: /changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.782  20500-20773/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Change count: 1
06-04 20:45:39.782  20500-20773/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Completed change count: 0
06-04 20:45:39.782  20500-20787/com.droid4you.application.wallet D/Sync﹕ changeTrackerCaughtUp
06-04 20:45:39.782  20500-20773/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ resolveReplicationProgress, current:28, total:29, active:true
06-04 20:45:39.780  20500-20783/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@22916ac9: adding rev to inbox {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee}
06-04 20:45:39.784  20500-20773/com.droid4you.application.wallet D//Application.java:138﹕ CBLManagerWorkExecutor ReplicationStartedEvent{}
06-04 20:45:39.785  20500-20773/com.droid4you.application.wallet D//Application.java:145﹕ CBLManagerWorkExecutor ReplicationEvent{current=28, total=29, active=true}
06-04 20:45:39.786  20500-20773/com.droid4you.application.wallet D/Sync﹕ processInbox called
06-04 20:45:39.786  20500-20993/com.droid4you.application.wallet D/Sync﹕ [PullerInternal.waitForPendingFutures()] STARTED - thread id: 93674
06-04 20:45:39.789  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Status: REPLICATION_IDLE
06-04 20:45:39.789  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Type: PULL
06-04 20:45:39.789  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Change count: 1
06-04 20:45:39.789  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Completed change count: 0
06-04 20:45:39.789  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ resolveReplicationProgress, current:0, total:1, active:true
06-04 20:45:39.790  20500-20542/com.droid4you.application.wallet D//Application.java:138﹕ CBLManagerWorkExecutor ReplicationStartedEvent{}
06-04 20:45:39.795  20500-20542/com.droid4you.application.wallet D//Application.java:145﹕ CBLManagerWorkExecutor ReplicationEvent{current=0, total=1, active=true}
06-04 20:45:39.795  20500-20773/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@3f45aa06: pullRemoteRevision with rev: {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee}
06-04 20:45:39.795  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: ReplicationStartedEvent{}
06-04 20:45:39.797  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: ReplicationEvent{current=28, total=29, active=true}
06-04 20:45:39.797  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: com.squareup.otto.DeadEvent@1c02b1e9
06-04 20:45:39.800  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: ReplicationStartedEvent{}
06-04 20:45:39.800  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: ReplicationEvent{current=0, total=1, active=true}
06-04 20:45:39.802  20500-20542/com.droid4you.application.wallet D/Sync﹕ processInbox called
06-04 20:45:39.802  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: com.squareup.otto.DeadEvent@2e1837a
06-04 20:45:39.806  20500-20783/com.droid4you.application.wallet D/ChangeTracker﹕ com.couchbase.lite.replicator.ChangeTracker@150dc178: /changeTrackerReceivedChange: {seq=33, id=UserConfigure, changes=[{rev=1-a08a91dbcf664e5e22224e82039e05ee}]}
06-04 20:45:39.806  20500-20783/com.droid4you.application.wallet D/Sync﹕ changeTrackerCaughtUp
06-04 20:45:39.808  20500-20542/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@22916ac9: pullRemoteRevision with rev: {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee}
06-04 20:45:39.813  20500-20542/com.droid4you.application.wallet D/Sync﹕ [fireTrigger()] => RESUME
06-04 20:45:39.819  20500-20542/com.droid4you.application.wallet D/Sync﹕ firing trigger: RESUME
06-04 20:45:39.820  20500-20999/com.droid4you.application.wallet D/Sync﹕ [PullerInternal.waitForPendingFutures()] STARTED - thread id: 93677
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/Sync﹕ State transition: IDLE -> RUNNING (via RESUME).  this: com.couchbase.lite.replicator.PullerInternal@22916ac9
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Status: REPLICATION_ACTIVE
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Type: PULL
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Change count: 1
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ Completed change count: 0
06-04 20:45:39.820  20500-20542/com.droid4you.application.wallet D/YablohnCouchDbProvider﹕ resolveReplicationProgress, current:0, total:1, active:true
06-04 20:45:39.821  20500-20542/com.droid4you.application.wallet D//Application.java:145﹕ CBLManagerWorkExecutor ReplicationEvent{current=0, total=1, active=true}
06-04 20:45:39.826  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: ReplicationEvent{current=0, total=1, active=true}
06-04 20:45:39.826  20500-20500/com.droid4you.application.wallet D//OttoBus.java:43﹕ main Posting event: com.squareup.otto.DeadEvent@f7825d
06-04 20:45:39.901  20500-20909/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.support.RemoteRequestRetry$1@16a680a3: RemoteRequestRetry inner request finished, url: https://xxx:6984/wallet-84277131-dad7-4565-8379-e70c5972a778/UserConfigure?rev=1-a08a91dbcf664e5e22224e82039e05ee&revs=true&attachments=true
06-04 20:45:39.902  20500-20909/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.support.RemoteRequestRetry$1@16a680a3: RemoteRequestRetry was successful, calling callback url: https://xxx:6984/wallet-84277131-dad7-4565-8379-e70c5972a778/UserConfigure?rev=1-a08a91dbcf664e5e22224e82039e05ee&revs=true&attachments=true
06-04 20:45:39.902  20500-20909/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@3f45aa06: pullRemoteRevision add rev: {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee} to batcher: com.couchbase.lite.support.Batcher@1289fa0
06-04 20:45:39.916  20500-20903/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.support.RemoteRequestRetry$1@cbcf1e: RemoteRequestRetry inner request finished, url: https://xxx:6984/wallet-84277131-dad7-4565-8379-e70c5972a778/UserConfigure?rev=1-a08a91dbcf664e5e22224e82039e05ee&revs=true&attachments=true
06-04 20:45:39.916  20500-20903/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.support.RemoteRequestRetry$1@cbcf1e: RemoteRequestRetry was successful, calling callback url: https://xxx:6984/wallet-84277131-dad7-4565-8379-e70c5972a778/UserConfigure?rev=1-a08a91dbcf664e5e22224e82039e05ee&revs=true&attachments=true
06-04 20:45:39.917  20500-20903/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@22916ac9: pullRemoteRevision add rev: {UserConfigure #1-a08a91dbcf664e5e22224e82039e05ee} to batcher: com.couchbase.lite.support.Batcher@3f1683ff
06-04 20:45:40.301  20500-20993/com.droid4you.application.wallet D/Sync﹕ batcher.waitForPendingFutures()
06-04 20:45:40.301  20500-20993/com.droid4you.application.wallet D/Sync﹕ waitPendingFuturesCompleted()
06-04 20:45:40.320  20500-20999/com.droid4you.application.wallet D/Sync﹕ batcher.waitForPendingFutures()
06-04 20:45:40.320  20500-20999/com.droid4you.application.wallet D/Sync﹕ waitPendingFuturesCompleted()
06-04 20:45:40.904  20500-20773/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@3f45aa06 inserting 1 revisions...
06-04 20:45:40.917  20500-20542/com.droid4you.application.wallet D/Sync﹕ com.couchbase.lite.replicator.PullerInternal@22916ac9 inserting 1 revisions...
06-04 20:45:40.940  20500-20542/com.droid4you.application.wallet E/SQLiteLog﹕ (2067) abort at 37 in [INSERT INTO revs(doc_id,revid,no_attachments,deleted,current,json) VALUES (?,?,?,?,?,?)]: UNIQUE constraint failed: revs.doc_id, revs.revid
06-04 20:45:40.946  20500-20542/com.droid4you.application.wallet E/SQLiteDatabase﹕ Error inserting doc_id=29 revid=1-a08a91dbcf664e5e22224e82039e05ee no_attachments=true deleted=false current=true json=[B@3e61bf2a
android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: revs.doc_id, revs.revid (code 2067)
at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:782)
at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788)
at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86)
at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1471)
at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1341)
at com.newrelic.agent.android.instrumentation.SQLiteInstrumentation.insert(SQLiteInstrumentation.java:115)
at com.couchbase.lite.android.AndroidSQLiteStorageEngine.insert(AndroidSQLiteStorageEngine.java:133)
at com.couchbase.lite.Database.insertRevision(Database.java:3901)
at com.couchbase.lite.Database.forceInsert(Database.java:4464)
at com.couchbase.lite.replicator.PullerInternal.insertDownloads(PullerInternal.java:507)
at com.couchbase.lite.replicator.PullerInternal$1.process(PullerInternal.java:101)
at com.couchbase.lite.support.Batcher.processNow(Batcher.java:203)
at com.couchbase.lite.support.Batcher.access$100(Batcher.java:24)
at com.couchbase.lite.support.Batcher$1.run(Batcher.java:41)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)

Downgrade to 1.1.0-521 didn't help!

Hey, I slowly went down through versions and it seems, problem was brought in version 1.1.0-513, older version 0.0.0-512 was working well in this situation. Hope it helps!

Hi @biokys,
Sorry for not responding for a while.
Thank you for additional information.
I checked commits between 1.1.0-513 and 1.1.0-512, but non of commits should not affect. And I tried to reproduce this issue with creating document on CouchDB by REST API. But it also does not reproduce the problem.
As you wrote in previous comment, ChangeTracker added the change twice for same document and revision. I will look into the issue from this point.

Hi @biokys,
I am still not able to reproduce this issue. Do you know exact steps to reproduce this issue?

Note to Self:

From the linked code, pull replicator does not fetch revisions which are already in the database. This code indicates SG or CouchDB returns changes for revisions that already exist in local database. And, if _changes returns duplicated change, client code should ignore second change.
https://github.com/couchbase/couchbase-lite-java-core/blob/61d021408a952140fb30194a6d1bfe93d4f9f46d/src/main/java/com/couchbase/lite/replicator/PullerInternal.java#L163

Does checking conflict solve this issue? iOS version does, but Android does not.
https://github.com/couchbase/couchbase-lite-ios/blob/4cc63fde38bb213f251380da1cc7c58e75d0e0ba/Source/CBL_Puller.m#L241
https://github.com/couchbase/couchbase-lite-ios/blob/4cc63fde38bb213f251380da1cc7c58e75d0e0ba/Source/CBL_Puller.m#L330

@hideki: i am enclosing json object i stored through rest api in couchdb:
{
"_id": "UserConfigure",
"_rev": "1-aa61d46b6569e0caeb0651f118f4c941",
"deviceId": "backend",
"key": "user_object",
"value": "1433750673970",
"reservedCreatedAt": "2015-06-08T08:04:33.970Z",
"reservedModelType": "UserConfigure",
"reservedOwnerId": "6269f6f6-78e9-44a5-a663-f3e48eb2cadd",
"reservedSource": "backend",
"changeSource": 2,
"changeType": 1
}

Hi @biokys,
Thank you for JSON doc. But I still could not reproduce the issue.
Following is steps I tried to reproduce:

Running CouchDB 1.6.1 on local (OSX)
Created Database on CouchDB. name => test
Run simple android app with continuous pull replication
Create doc using REST API

curl -X PUT -H "Content-Type: application/json" -d '{
   "deviceId": "backend",
   "key": "user_object",
   "value": "1433750673970",
   "reservedCreatedAt": "2015-06-08T08:04:33.970Z",
   "reservedModelType": "UserConfigure",
   "reservedOwnerId": "6269f6f6-78e9-44a5-a663-f3e48eb2cadd",
   "reservedSource": "backend",
   "changeSource": 2,
   "changeType": 1
}' http://localhost:5984/test/UserConfigure

Results: At Android side, any Exception were not thrown.
Question: Is it correct steps to reproduce the problem??? Please let us know!

Yes i think it is correct steps. I am not sure why i facing this problem. Meanwhile I made a workaround so it is not problem for me right now.

@biokys  Thank you for your comment. I believe something is missing to reproduce this issue now. I will keep eye open for this problem.

@biokys , is it possible to disclose what workaround you did? I'm also facing the same issue at the moment.
@hideki , my error log looks like this:
E/SQLiteLog﹕ (2067) abort at 37 in [INSERT INTO revs(doc_id,revid,no_attachments,deleted,current,json) VALUES (?,?,?,?,?,?)]: UNIQUE constraint failed: revs.doc_id, revs.revid
E/SQLiteDatabase﹕ Error inserting doc_id=23089 revid=1-75c8b377dbb6216440ea6738a146d6ae no_attachments=true deleted=false current=true json=[B@307f9acf
    android.database.sqlite.SQLiteConstraintException: UNIQUE constraint failed: revs.doc_id, revs.revid (code 2067)
            at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method)
            at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:952)
            at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788)
            at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86)
            at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1609)
            at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1479)
            at com.couchbase.lite.android.AndroidSQLiteStorageEngine.insert(AndroidSQLiteStorageEngine.java:133)
            at com.couchbase.lite.Database.insertRevision(Database.java:3901)
            at com.couchbase.lite.Database.forceInsert(Database.java:4464)
            at com.couchbase.lite.replicator.PullerInternal.insertDownloads(PullerInternal.java:507)
            at com.couchbase.lite.replicator.PullerInternal$1.process(PullerInternal.java:101)
            at com.couchbase.lite.support.Batcher.processNow(Batcher.java:205)
            at com.couchbase.lite.support.Batcher.access$100(Batcher.java:24)
            at com.couchbase.lite.support.Batcher$1.run(Batcher.java:41)
            at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
            at java.util.concurrent.FutureTask.run(FutureTask.java:237)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:152)
            at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:265)
            at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
            at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
            at java.lang.Thread.run(Thread.java:818)

I was doing an initial non-continuous sync with a couch db, containing ~83k documents, with update sequence of 82712. It synced roughly about 20k documents before i see that log. I attached a Replicatio.ChangeListener to the pull replicator and at that point onwards i see errors coming in.
/**
     * Observer for replication errors
     */
    public static class ReplicationErrorObserver implements Replication.ChangeListener {
        private CountDownLatch doneSignal;

        public ReplicationErrorObserver(CountDownLatch doneSignal) {
            this.doneSignal = doneSignal;
        }

        @Override
        public void changed(Replication.ChangeEvent event) {
            Replication replicator = event.getSource();
            if (replicator.getLastError() != null) {
                doneSignal.countDown();

                KLog.e(TAG, "ReplicationErrorObserver >>> " + replicator.getLastError().getLocalizedMessage() + " " + replicator.getLastError().toString(), Severity.WTF);

                //Only force exit if this is due to unauthorized problem
                if(replicator.getLastError().getLocalizedMessage() != null && replicator.getLastError().getLocalizedMessage().equalsIgnoreCase("Unauthorized")){
                    //Check that if we have already dealt with this situation
                    if(KlinifyApplication.getInstance().isAppInitialized()){
                        //Deal with it
                        KlinifyApplication.getInstance().pushRestartApplicationEvent("Unauthorized access to database replication. Please check with administrator.");
                    }
                }
            }
        }
    }

The error seems to be from HttpResponseException. Maybe somewhere in the middle my device got disconnected and reconnected to the network and it triggered this.

Hi @bundeeteddee, thank you for your inputs.

In the CBL iOS, if SQL error is SQLITE_CONSTRAINT, the method does not exit. We needs to port this error handling to Android/Java.
https://github.com/couchbase/couchbase-lite-ios/blob/master/Source/CBL_SQLiteStorage.m#L1668-L1684
In addition to this, it is time to fix the following codes too.
https://github.com/couchbase/couchbase-lite-java-core/blob/master/src/main/java/com/couchbase/lite/store/SQLiteStore.java#L1287-L1308

Hi,@hideki
for the code:
/**
     * Observer for replication errors
     */
    public static class ReplicationErrorObserver implements Replication.ChangeListener {
        private CountDownLatch doneSignal;

        public ReplicationErrorObserver(CountDownLatch doneSignal) {
            this.doneSignal = doneSignal;
        }

        @Override
        public void changed(Replication.ChangeEvent event) {
            Replication replicator = event.getSource();
            if (replicator.getLastError() != null) {
                doneSignal.countDown();

                KLog.e(TAG, "ReplicationErrorObserver >>> " + replicator.getLastError().getLocalizedMessage() + " " + replicator.getLastError().toString(), Severity.WTF);

                //Only force exit if this is due to unauthorized problem
                if(replicator.getLastError().getLocalizedMessage() != null && replicator.getLastError().getLocalizedMessage().equalsIgnoreCase("Unauthorized")){
                    //Check that if we have already dealt with this situation
                    if(KlinifyApplication.getInstance().isAppInitialized()){
                        //Deal with it
                        KlinifyApplication.getInstance().pushRestartApplicationEvent("Unauthorized access to database replication. Please check with administrator.");
                    }
                }
            }
        }
    }

when will cause Unauthorized error?
I found the same error:
V/Sync    ( 2739): com.couchbase.lite.replicator.BulkDownloader[/jarvis/_bulk_get]: BulkDownloader finally block.  url: http://<IP_ADDRESS>/sgdb/_bulk_get?revs=true&attachments=true
V/Sync    ( 2739): com.couchbase.lite.replicator.BulkDownloader[/jarvis/_bulk_get]: BulkDownloader calling respondWithResult.  url: http://<IP_ADDRESS>/sgdb/_bulk_get?revs=true&attachments=true, error: org.apache.http.client.HttpResponseException: Unauthorized
E/Sync    ( 2739): com.couchbase.lite.replicator.PullerInternal@307ee6af: Progress: set error = org.apache.http.client.HttpResponseException: Unauthorized

but I don't know why I got Unauthorized Exception. This cause the Replication only sync the part of data.

@atom992
Unauthorized Exception is usually caused by authentication error. Please check your Sync Gateway or CouchDB settings.

Thanks, I fixed the issue. It do caused by authentication error.


Remove ARM toolchain

The PR removes our dependency on ARM binutils, and the ARM toolchain. Instead, we favor cargo binutils, and the dependencies recommended by the teensy4-rs project.

Draft for testing...

Draft for testing...


#[UIC-1729] Chart header on/off functionality in dashboard view

UIC-1729
CATEGORY
Choose one

[ ] Bug Fix
[X] Enhancement (new features, refinement)
[ ] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY
Use this flag to on/off chart header in dashboard view
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF

TEST PLAN

ADDITIONAL INFORMATION

[ ] Has associated issue:
[ ] Changes UI
[ ] Requires DB Migration.
[ ] Confirm DB Migration upgrade and downgrade tested.
[ ] Introduces new feature or API
[ ] Removes existing feature or API

REVIEWERS

toggling visibility of Header should not enable "Run Query"

Currently, superset is not provide to remove runQuery option. We can create new story and plan this functionality.

1> Please create a user story capturing all the details we want implement.
2> Till we work on user-story, can we stay aligned with RVF and use renderTrigger to remove runQuery.  Superset also uses this property in different cases where runQuery is not required. (ex: propagate in line chart). You have also used renderTrigger in Emit Filter Events in line chart. So till date we find a better solution, I think we should provide an unified experience across RVF and stay aligned with superset.

Please create a new US

https://guavus-jira.atlassian.net/browse/UIC-1766


Non-optimal navigation properties query translation

When I run the following code to retrieve entity with navigation properties:
            MyDbContext.LevelAppointments
                .Include(la => la.HintRewards).ThenInclude(lahr => lahr.HintType)
                .Include(la => la.ItemRewards).ThenInclude(lair => lair.ItemType)
                .SingleOrDefaultAsync(la => la.Level == level);

EF.Core runs following queries in the database:
SELECT la."Level", la."CoinReward", la."Experience"
FROM "LevelAppointments" AS la
WHERE la."Level" = @__level_0
ORDER BY la."Level"
LIMIT 2

SELECT "la.HintRewards"."Level", "la.HintRewards"."HintTypeId", "la.HintRewards"."Value", "l.HintType"."Id", "l.HintType"."Name"
FROM "LevelAppointmentHintRewards" AS "la.HintRewards"
INNER JOIN "HintTypes" AS "l.HintType" ON "la.HintRewards"."HintTypeId" = "l.HintType"."Id"
INNER JOIN (
    SELECT la0."Level"
    FROM "LevelAppointments" AS la0
    WHERE la0."Level" = @__level_0
    ORDER BY la0."Level"
    LIMIT 1
) AS t ON "la.HintRewards"."Level" = t."Level"
ORDER BY t."Level"

SELECT "la.ItemRewards"."Level", "la.ItemRewards"."UserItemTypeId", "la.ItemRewards"."Value", "l.ItemType"."Id", "l.ItemType"."Name"
FROM "LevelAppointmentItemRewards" AS "la.ItemRewards"
INNER JOIN "UserItemTypes" AS "l.ItemType" ON "la.ItemRewards"."UserItemTypeId" = "l.ItemType"."Id"
INNER JOIN (
    SELECT la1."Level"
    FROM "LevelAppointments" AS la1
    WHERE la1."Level" = @__level_0
    ORDER BY la1."Level"
    LIMIT 1
) AS t0 ON "la.ItemRewards"."Level" = t0."Level"
ORDER BY t0."Level"

My question is: why SQL queries for navigation properties are so bulky? Using subqueries with ORDER BY and LIMIT significantly narrows possible variants for native RDBMS query planner and leads to non-effective query plans. I also met cases, when navigation subqueries use DISTINCT and JOIN-clauses to tables, which were not actually needed.
For this given case - why do we need subquery with ORDER BY and LIMIT when we join from dependent entity to principal with primary key? I would expect query to be something like:
SELECT "la.HintRewards"."Level", "la.HintRewards"."HintTypeId", "la.HintRewards"."Value", "l.HintType"."Id", "l.HintType"."Name"
FROM "LevelAppointmentHintRewards" AS "la.HintRewards"
INNER JOIN "HintTypes" AS "l.HintType" ON "la.HintRewards"."HintTypeId" = "l.HintType"."Id"
INNER JOIN "LevelAppointments" AS la0 ON "la.HintRewards"."Level" = la0."Level"
WHERE la0."Level" = @__level_0
ORDER BY la0."Level"

or even better:
SELECT "la.HintRewards"."Level", "la.HintRewards"."HintTypeId", "la.HintRewards"."Value", "l.HintType"."Id", "l.HintType"."Name"
FROM "LevelAppointmentHintRewards" AS "la.HintRewards"
INNER JOIN "HintTypes" AS "l.HintType" ON "la.HintRewards"."HintTypeId" = "l.HintType"."Id"
WHERE "la.HintRewards"."Level" = @__level_0
ORDER BY "la.HintRewards"."Level"

Steps to reproduce
Here is fragment of my database model entities:
    public class HintType
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

    public class UserItemType
    {
        public int Id { get; set; }
        public string Name { get; set; }
    }

    public class LevelAppointment
    {
        public int Level { get; set; }
        public decimal Experience { get; set; }
        public decimal CoinReward { get; set; }
        public ICollection<LevelAppointmentHintReward> HintRewards { get; set; }
        public ICollection<LevelAppointmentItemReward> ItemRewards { get; set; }
    }

    public class LevelAppointmentHintReward
    {
        public int Level { get; set; }
        public int HintTypeId { get; set; }
        public int Value { get; set; }
        public LevelAppointment LevelAppointment { get; set; }
        public HintType HintType { get; set; }
    }

    public class LevelAppointmentItemReward
    {
        public int Level { get; set; }
        public int UserItemTypeId { get; set; }
        public int Value { get; set; }
        public LevelAppointment LevelAppointment { get; set; }
        public UserItemType ItemType { get; set; }
    }

and here is fragment of my Fluent API configuration:
            modelBuilder.Entity<HintType>()
                .HasIndex(ht => ht.Name)
                .IsUnique();

            modelBuilder.Entity<UserItemType>()
                .HasIndex(uit => uit.Name)
                .IsUnique();

            modelBuilder.Entity<LevelAppointment>()
                .HasKey(la => la.Level);

            modelBuilder.Entity<LevelAppointmentHintReward>()
                .HasKey(lahr => new { lahr.Level, lahr.HintTypeId });

            modelBuilder.Entity<LevelAppointmentHintReward>()
                .HasOne(lahr => lahr.LevelAppointment)
                .WithMany(la => la.HintRewards)
                .HasForeignKey(lahr => lahr.Level);

            modelBuilder.Entity<LevelAppointmentItemReward>()
                .HasKey(lair => new { lair.Level, lair.UserItemTypeId });

            modelBuilder.Entity<LevelAppointmentItemReward>()
                .HasOne(lair => lair.LevelAppointment)
                .WithMany(la => la.ItemRewards)
                .HasForeignKey(lair => lair.Level);

Further technical details
EF Core version: 2.2.4
Database Provider: Npgsql.EntityFrameworkCore.PostgreSQL
Operating system: Windows 7 Home SP1 build 7601
IDE: Visual Studio 2017 version 15.9.11

I also met cases, when navigation subqueries use DISTINCT and JOIN-clauses to tables, which were not actually needed.

#12022
For this issue, mitigated by #12098


Add --silent option

Could also replace the three flags ("interactive", "devicecode", "silent") with a single parameter "mode" that takes a parameter ("interactive", "devicecode", "silent") with "interactive" as the default.

On 22 May 2024, at 11:49, Runar Ask Johannessen @.***> wrote:
@equinor-ruaj commented on this pull request.
In src/sumo/wrapper/login.py https://github.com/equinor/sumo-wrapper-python/pull/201#discussion_r1609649016:

@@ -33,7 +34,7 @@ def get_parser() -> ArgumentParser:
"--interactive",
dest="interactive",
action="store_true",

   default=False,

   default=True,

Seems correct. The current config will always set interactive to True not matter what.
Should either remove default completely or set default=False
—
Reply to this email directly, view it on GitHub https://github.com/equinor/sumo-wrapper-python/pull/201#discussion_r1609649016, or unsubscribe https://github.com/notifications/unsubscribe-auth/AAIDQOSKJM633WGNUOEKCUTZDRS4BAVCNFSM6AAAAABIBLFKQKVHI2DSMVQWIX3LMV43YUDVNRWFEZLROVSXG5CSMV3GSZLXHMZDANZQGY4TMMZUGM.
You are receiving this because your review was requested.

Could also replace the three flags ("interactive", "devicecode", "silent") with a single parameter "mode" that takes a parameter ("interactive", "devicecode", "silent") with "interactive" as the default.

Will give this a try 👍


Persistent client improvements

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Added option to use arrays in query.

Is this still relevant @marcushanses ?

@marcushanses Could you rebase this?


Long function signatures create very wide completion box

I'm seeing this issue when writing C# using the omnisharp plugin. Here are my plugin versions:

autocomplete-plus - 2.9.0
omnisharp-atom - 0.2.1

However I am sure this issue is not a result of C# or omnisharp. It is just a special case that occurs when writing certain C# code. You can see the issue in the attached screenshot:

When using Linq extension methods, some have quite a few arguments (see "Join" in the image). When it hints all of the arguments it pushes the drop-down box to be very wide, potentially even wider than the atom UI window.
It would seem that the function argument hints should have a maximum width so that the box doesn't grow unbounded. However then there should maybe be yet another "tooltip" like hint to show all of the function arguments if the user is selecting that option.
The short term fix may be to put a max-width on the ".right-label" element in the UI.

FYI, we're migrating to the v2 API at the moment - track progress:
https://github.com/OmniSharp/omnisharp-atom/issues/122


Add support for rskuipers/php-assumptions

Add support for the tool rskuipers/php-assumptions: Tool to detect assumptions

The tool have XML output.

Closing, please see https://github.com/EdgedesignCZ/phpqa/issues/112#issuecomment-369987327


build: permit building without Foundation build roots

This is meant to support the Windows toolchain build which uses a staged
build where Foundation is prebuilt and will be used from the prebuilt
image rather than from a build root.

@swift-ci please smoke test

Let's do a full build before merging, just to be safe.

@swift-ci please test

Seems that this is a CI issue as it is checking out the wrong branch?  CC @shahmishal

This is fixed please try again (cc: @compnerd)

@swift-ci please test

The failure is due to the swift repository break, going to re-trigger.

@swift-ci please test

Bleh, the Linux side is failing with TSC tests flaking

@swift-ci please test Linux platform

Bleh seems it hit a timeout.

@swift-ci please test Linux platform

@swift-ci please test Linux platform


Sky in Corneria is misaligned

After f40105e, the sky is misaligned in the intro/ending cutscenes of Corneria. Previous versions looked accurate to the original game.

Intro
f40105e:

previous commit:

Ending
f40105e:

previous commit:

It looks like the variable in this line was missed when bringing over the decomp's documentation.


Create 300 second timeout upon rate limit error?

Would solve having multiple folders if you have many accounts.

Heya,
This has been rolled into the current testing branch (see: https://github.com/jakcodex/muledump/tree/vaultorder1).
When rate limiting is detected, the system now marks a time 5 minutes in the future and stores it to localStorage. Until the time expires, all attempts to reload character data are blocked. The system will serve cached account data wherever possible in the meantime.
I've also added the ability to cancel loading of accounts waiting in the queue. For example, if you're loading thru a list of 50 accounts you can now cancel at any point. When a queue is active, the 'reload all' button changes to 'cancel reload'.
Changing options was triggering account reloads. This could cause rate limiting rather quickly with large accounts.js files. This now reloads from cache only.
Check it out. Tell me what you think.

This has been released in v0.7.5.


DeveloperGuide.adoc: Add implementation details for exporting volunteer certificate

Coverage remained the same at 78.484% when pulling da3066bd48da3b6edc05c6de752fa7ebcc4218ed on sharan8:exportcert-developerguide into d186f096cd37e7471608ad2199a29e1fe77362fd on CS2103-AY1819S1-W16-2:master.


Unable to download the dataset

I am unable to download the dataset from the links provided on the github page. The server does not respond. I want to download the files G1.zip through G6.zip.

Hi,
I tried it right now and it works :) Maybe there was a temporary problem.

I tried using a VPN and it worked. Thanks for checking.


MSID: 94306 Version: 2 DOI: 10.1101/2<IP_ADDRESS>0398

MSID: 94306
Version: 2
Preprint DOI: https://doi.org/10.1101/2<IP_ADDRESS>0398
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=94306
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.1101/2<IP_ADDRESS>0398

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/94306v2
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.1101/2<IP_ADDRESS>0398
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/94306/v2/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

Luis Alberto Bezares Calderón wrong email address


无法依赖

ERROR: Failed to resolve: com.amitshekhar

I think it's related to #208. Use Jitpack instead for now (https://jitpack.io/#amitshekhariitbhu/Android-Debug-Database/v1.0.6) and subscribe to #212 issue


listAccounts() doesn't respect cursor/pagination

Really like your work on this coinbase advanced trader API!  I have added several methods to my working copy of the codebase and noticed that the listAccounts() method was only returning partial account info.  I'd like to provide code for you to review - let me know the best path for that.

Feel free to create a pull request into this repo and I'll review and approve :)
Thanks!

You'll need to create a branch for me to commit changes to.  Then I'll create pull request.  I'm not able to commit on the main branch for security purposes.   If too much trouble I can paste the changes into this issue for you to review and merge if you choose.

Do you not have the ability to create a branch? I'll see if I can change
the privacy settings.
On Sun, Oct 1, 2023 at 2:01 PM John Tashiro @.***>
wrote:

You'll need to create a branch for me to commit changes to. Then I'll
create pull request. I'm not able to commit on the main branch for security
purposes. If too much trouble I can paste the changes into this issue for
you to review and merge if you choose.
—
Reply to this email directly, view it on GitHub
https://github.com/rhettre/coinbase-advancedtrade-python/issues/7#issuecomment-1742169577,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AB7GQ2NYOBW2FI662IEDFMDX5G4ZVANCNFSM6AAAAAA5GXALJE
.
You are receiving this because you commented.Message ID:
@.***>

has this issue been fixed yet? i'm running into it as well.


Missing documentation about init-only setters and records

I miss how EFCORE handle init-only setters for structs, classes and records.
I also miss documentation about any differences using records instead of classes.

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

ID: ecc7aedf-6301-7ec7-4f65-81749b1f54c8
Version Independent ID: d0774ffa-c841-e6df-72de-d7f53c0d6f6f
Content: Entity types with constructors - EF Core
Content Source: entity-framework/core/modeling/constructors.md
Product: entity-framework
Technology: entity-framework-core
GitHub Login: @ajcvickers
Microsoft Alias: avickers

Duplicate of #2931

Duplicate of #2931

Init-only properties should work just like normal properties - EF uses reflection to set properties on entities that it loads, and that works regardless of whether the property has a regular setter or an init-only setter.
In principle, records aren't different from classes. However, records are frequently used for immutable types, and that doesn't work well with EF Core's change tracking mechanism.
@ajcvickers it feels like we've had this discussion frequently enough that it may be worth doing #2931 for 6.0, maybe I'll give it a stab.

Init-only properties should work just like normal properties - EF uses reflection to set properties on entities that it loads, and that works regardless of whether the property has a regular setter or an init-only setter.
In principle, records aren't different from classes. However, records are frequently used for immutable types, and that doesn't work well with EF Core's change tracking mechanism.
@ajcvickers it feels like we've had this discussion frequently enough that it may be worth doing #2931 for 6.0, maybe I'll give it a stab.

@roji Go for it.

@roji Go for it.


Use gradle root project build dir in check-license

PR Description
Fixed check-license to use root project's build dir property instead of relative path which resolves to user.dir.
This was stopping me from building locally
Fixed Issue(s)

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


[WIP] fix: browser.close() yield once close is complete

Status: sort of trying to fix this....

WebSocketTransport.close() resolves after closed event
Connection._closed is true and Events.Connection.Closed is only emitted once transport has finished closing
Browser.isConnected() / Browser.close() use awaited underlying closes
new Events.Browser.Disconnecting and Events.Browser.Disconnected does not fire when process is killed (because atexit stuff cannot await)

@tjk I'm going to close this as a lot of the code has changed since; however if you're still hitting issues with this and would like to bring this PR back, please feel free and ping me if I can help.


Uncaught exception: AssertionError [ERR_ASSERTION]

In function onConnect you use assert.equal(head.length,0).
If assertion fails, it leads to uncaught process exception.
Please process this as an error so than exception is not beign thrown to nowhere.
This problem arises when I use request module and working with bad proxies.

Having same issue while using proxy and "non existing domain" url
const options = {
    uri: url,
    timeout: requestTimeout,
    resolveWithFullResponse: true,
    proxy: `http://${process.env.PROXY_USERNAME}:${process.env.PROXY_PASSWORD}@us.smartproxy.com:10000`
  }

Bumped into exactly the same error in a batch process which killed the whole thing.
Just catching it now and ignoring
  if (err.name === 'AssertionError') {
        // handle the assertion here or just ignore it..

    }

Any way to work around this issue?

process.on('uncaughtException', err => {   if (err.name === 'AssertionError') {      console.log('Assertion error', err);   } });
Only way to avoid this even though it isn't exactly good practice. Alternatively, you could rebuild the tunnel-agent library, but this is a fast solution if you're being lazy.

I ended up with own fix fork: https://github.com/remoteorigin/tunnel-agent/commit/0907b7b8b7bd152b972134c92b9f51b841ce5d6e

Same here:
2020-03-16T16:36:39.613Z   throw new AssertionError(obj);
2020-03-16T16:36:39.615Z   ^
2020-03-16T16:36:39.617Z
2020-03-16T16:36:39.620Z AssertionError [ERR_ASSERTION]: 3824 == 0
2020-03-16T16:36:39.622Z     at ClientRequest.onConnect (/home/myuser/node_modules/tunnel-agent/index.js:160:14)
2020-03-16T16:36:39.624Z     at Object.onceWrapper (events.js:286:20)
2020-03-16T16:36:39.626Z     at ClientRequest.emit (events.js:198:13)
2020-03-16T16:36:39.628Z     at Socket.socketOnData (_http_client.js:484:11)
2020-03-16T16:36:39.630Z     at Socket.emit (events.js:198:13)
2020-03-16T16:36:39.632Z     at addChunk (_stream_readable.js:288:12)
2020-03-16T16:36:39.634Z     at readableAddChunk (_stream_readable.js:269:11)
2020-03-16T16:36:39.636Z     at Socket.Readable.push (_stream_readable.js:224:10)
2020-03-16T16:36:39.638Z     at TCP.onStreamRead [as onread] (internal/stream_base_commons.js:94:17)

Fix pending on PR: https://github.com/request/tunnel-agent/pull/51
since Nov 18, 2019

Fix pending on PR: https://github.com/request/tunnel-agent/pull/51
since Nov 18, 2019

hi is anyone merging this issue? I really need to get it fixed... tnx


Version 1.0.2 is not working

New version is not working.
I have an error. All is working fine on 1.0.1.
React native reanimated 2.17.0
@shopify/react-native-skia: ^0.1.193

But all is working fine with react-native-reanimated 3.2.0

I get the same error.

I've upgraded reanimated to version 3.2.0

It seems like the issue was resolved by using a newer version of reanimated :)


Many getting started doc are go main.go

For example: https://github.com/oam-dev/catalog/tree/master/traits/ingresstrait#getting-started
This is not good: a OAM controller should be a Docker image and installed by Deployment YAML/

please build image on Docker hub and fix the readme \cc @captainroy-hy @My-pleasure


UFW + PiVPN integration

Not really an issue but i'm having a couple of issues to configure correctly UFW with pivpn. Connection is done flawlessly but i just cant browse any website...My config:
To                         Action      From

22/tcp                     ALLOW       Anywhere
4096/udp                   ALLOW       Anywhere
53/tcp                     ALLOW       Anywhere
53/udp                     ALLOW       Anywhere
53                         ALLOW       <IP_ADDRESS>/24
53,67/udp on wlan0         ALLOW       Anywhere
22/tcp (v6)                ALLOW       Anywhere (v6)
4096/udp (v6)              ALLOW       Anywhere (v6)
53/tcp (v6)                ALLOW       Anywhere (v6)
53/udp (v6)                ALLOW       Anywhere (v6)
53,67/udp (v6) on wlan0    ALLOW       Anywhere (v6)
Anywhere                   ALLOW OUT   Anywhere on tun0
53,4096/udp                ALLOW OUT   Anywhere on wlan0
80/tcp                     ALLOW OUT   Anywhere
443/tcp                    ALLOW OUT   Anywhere
53/udp                     ALLOW OUT   Anywhere on wlan0
4096/udp                   ALLOW OUT   Anywhere on wlan0
Anywhere (v6)              ALLOW OUT   Anywhere (v6) on tun0
53,4096/udp (v6)           ALLOW OUT   Anywhere (v6) on wlan0
80/tcp (v6)                ALLOW OUT   Anywhere (v6)
443/tcp (v6)               ALLOW OUT   Anywhere (v6)
53/udp (v6)                ALLOW OUT   Anywhere (v6) on wlan0
4096/udp (v6)              ALLOW OUT   Anywhere (v6) on wlan0
Any ideas? (using a zero w)

if you still need help please reopen an issue using the issue template and filling it the best you can so we can help you out tracking the problem.
also please consider taking this to our subreddit r/pivpn as this is not entirely a code related issue.
Kind Regards.


Extend clean_meta_xml to include ApexPage and AuraDefinitionBundle

and ApexComponent

**lurch: add

**lurch: add

Tracking W-027065


Is it possible to change the color of wheel value field ?

hello, I am using this library and found out that color on table and wheel for same values are different. Example for 1st the color on table is red but on wheel it's black.
How can I resolve it ?

Hi, @akshatkumar27. At this moment the color of a field on wheel is getting randomly. Currently you can't change it. I agree that it should be changed and has the same color on table and wheel. I won't be able to change this soon but this issue is my reminder now. So, don't close this, please

Of course. You can always send a pull request if you want to fix it.

On 9 Nov 2023, at 7:41 a.m., Akshat kumar @.***> wrote:
Can you assign me this issue I can try to fix it

👋 Hi @akshatkumar27 I know I am late to the party but I forked this repo and upgraded it. https://github.com/dozsolti/react-casino-roulette/
One of the upgrades that I did was fixing the colors (also putting the numbers in the right/official order). ✅
Another feature that I added is responsiveness, now you can change the height of the table, so the other issue #3 should be also fixed.  ✅

Hi, guys. Thank you for your contribution to the package.On 7 Dec 2024, at 4:01 p.m., dozsolti @.***> wrote:
👋 Hi @akshatkumar27 I know I am late to the party but I forked this repo and upgraded it. https://github.com/dozsolti/react-casino-roulette/
One of the upgrades that I did was fixing the colors (also putting the numbers in the right/official order). ✅
Another feature that I added is responsiveness, now you can change the height of the table, so the other issue #3 should be also fixed.  ✅
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you commented.Message ID: @.***>

Thank you for your work, @dozsolti. I've mentioned you in README.

I've mentioned you in README.

I didn't expect this but thank you so much. 😄


Click on '...'
See error '...'

[X] Yes
[ ] No

There is a similar issue for google translator you add hover options only


Twitch API communication error

Jinux crashes every time it can't communicate with Twitch API server.
Possible solution:
Add try/catch system and log the error in catch statement.

Fixed in 09286f014228b1ce04671da846233b0c4a38b24b commit.