Code diff highlighting breaks on tsx/jsx code blocks

To Reproduce

Make a tsx codeblock in an .mdx page
Example:

// ...

export default function MyAgent() {
  return (
    <Agent>
      <PokemonDexAssistant /> // [!code ++]
    </Agent>
  );
}

Run the app

Current vs. Expected behavior
Current
The // [!code ++] renders as-is:

Expected
According to the documentation, this should have rendered that particular line as an insert diff.
Provide environment information
Operating System:
  Platform: darwin
  Arch: arm64
  Version: Darwin Kernel Version 23.6.0: Mon Jul 29 21:13:04 PDT 2024; root:xnu-10063.141.2~1/RELEASE_ARM64_T6020
  Available memory (MB): 16384
  Available CPU cores: 10
Binaries:
  Node: 22.9.0
  npm: 10.8.3
  Yarn: N/A
  pnpm: 9.5.0
Relevant Packages:
  next: 15.0.1 // There is a newer version (15.0.3) available, upgrade recommended!
  eslint-config-next: 14.1.0
  react: 18.3.1
  react-dom: 18.2.0
  typescript: 5.6.3
Next.js Config:
  output: N/A
 ⚠ There is a newer version (15.0.3) available, upgrade recommended!
   Please try the latest canary version (`npm install next@canary`) to confirm the issue still exists before creating a new issue.
   Read more - https://nextjs.org/docs/messages/opening-an-issue

Which area(s) are affected? (Select all that apply)
Not sure
Additional context
No response

This comment syntax is invalid in JSX, you need to use something like:
<>
  {/* [!code highlight] */}
</>

Doesn't look consistent

Okay update here, I've realized it's possible by just adding the comment in the line above the line you want highlighted. The only catch is that it has to be the only content in that line. Which works for me.


Add tests for wrapping c over $p$

It might be a RustCrypto thing which just panics on certain methods when bytes yields the value larger than $p$, but it's still a worthy case to have in the suite across implementation to be sure that wrapping is done correctly, and that signatures equality can be facilitated.

add $p$ to the test signature and verify
find a hash greater than $p$
test the signing-verifying with it
consider adding Eq kind of trait in Rust implementations


[Event Hubs] Websocket errors in node are translated to [object Object]

Package Name: @azure/core-amqp
Package Version: 4.2.1
Operating system: Windows
[x] nodejs

version: v20.11.1

[ ] browser

name/version:

[ ] typescript

version:

Is the bug related to documentation in

[ ] README.md
[ ] source code documentation
[ ] SDK API docs on https://docs.microsoft.com

Describe the bug
CbsClient throws Error: [object Object] instead of the actual error when using websocket in node.
To Reproduce
Steps to reproduce the behavior:

Install @azure/core-amqp and ws
Save the javascript code below as repro.js
Run node repro.js

repro.js contents
const { ConnectionContextBase } = require('@azure/core-amqp');
const { WebSocket } = require('ws');

const ctx = ConnectionContextBase.create({
  config: {
    webSocket: WebSocket,
    endpoint: 'sb://example.invalid/',
    host: 'example.invalid',
    connectionString: 'Endpoint=sb://example.invalid/',
    sharedAccessKeyName: 'test',
    sharedAccessKey: 'test',
  },
  connectionProperties: {
    userAgent: 'test',
  },
});

ctx.cbsSession.init()
  .catch(console.log);

Expected behavior
CbsSession.init should throw something like Error: getaddrinfo ENOTFOUND example.invalid.
Actual behavior
CbsSession.init throws an error with a meaningless message:
Error: [object Object]
    at translate (C:\Code\azure-websocket-error-repro\node_modules\@azure\core-amqp\dist\index.js:1076:42)
    at CbsClient.init (C:\Code\azure-websocket-error-repro\node_modules\@azure\core-amqp\dist\index.js:1688:37)
    at process.processTicksAndRejections (node:internal/process/task_queues:95:5)

Additional context
This is a minimal repro case. The real world scenario involves @azure/event-hubs and intermittent internet connection.
The websocket library throws an ErrorEvent object and core-amqp tries to convert it to a string, producing [object Object]. Earlier in that function, there's code handling websocket errors, but it doesn't cover node and doesn't propagate the specific error either.
Screenshots
The actual error in my real world scenario.

This should be fixed now.


Remove tsbuildinfo

When present the initial build / dev command execution does not work.

yeah still trying to understand the turbo repo. its generated automatically but maybe its better to remove from git


Add rosa profiles for installing using AWS ccs authentication

As we are using STS as default AWS authentication method on ROSA installations, we need to add profiles using CCS for comparing installation timings

HOLD until https://github.com/cloud-bulldozer/airflow-kubernetes/pull/168 will be merge

Codecov Report

Merging #173 (95a6aed) into master (0a1b6ff) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #173   +/-   ##
=======================================
  Coverage   93.48%   93.48%
=======================================
  Files          24       24
  Lines         997      997
=======================================
  Hits          932      932
  Misses         65       65

Flag
Coverage Δ

gha
93.48% <ø> (ø)

python-3.9
93.48% <ø> (ø)

unit
93.48% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Continue to review full report at Codecov.

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

Looks good, do we want to rename the STS installs configs also like sts-ovn.json and sts-sdn.json. Perhaps not required since STS will be default going forward.

Yep, as it is the default, there is no need to identify as STS. My idea is to remove ccs-* runs after comparing results and left only the sts ones, with the common name

Looks good, do we want to rename the STS installs configs also like sts-ovn.json and sts-sdn.json. Perhaps not required since STS will be default going forward.

Yep, as it is the default, there is no need to identify as STS. My idea is to remove ccs-* runs after comparing results and left only the sts ones, with the common name

SGTM


Multiple Design issues in the responsive view

Describe the Bug.
There are multiple design issues in the responsive view.
On the global header view:

Open the navigation the page gets horizontal scrollable:

The localization dropdown has no spacing:

Reproduction Steps

Install the payloadcms website template from https://github.com/payloadcms/payload/tree/main/templates/website
open the admin interface
navigate to globals -> header

Environment Info
Binaries:
  Node: 22.12.0
  npm: 10.9.0
  Yarn: N/A
  pnpm: 9.15.0
Relevant Packages:
  payload: 3.9.0
  next: 15.1.2
  @payloadcms/db-postgres: 3.9.0
  @payloadcms/email-nodemailer: 3.9.0
  @payloadcms/graphql: 3.9.0
  @payloadcms/live-preview: 3.9.0
  @payloadcms/live-preview-react: 3.9.0
  @payloadcms/next/utilities: 3.9.0
  @payloadcms/payload-cloud: 3.9.0
  @payloadcms/plugin-form-builder: 3.9.0
  @payloadcms/plugin-nested-docs: 3.9.0
  @payloadcms/plugin-redirects: 3.9.0
  @payloadcms/plugin-search: 3.9.0
  @payloadcms/plugin-seo: 3.9.0
  @payloadcms/richtext-lexical: 3.9.0
  @payloadcms/translations: 3.9.0
  @payloadcms/ui/shared: 3.9.0
  react: 19.0.0
  react-dom: 19.0.0
Operating System:
  Platform: darwin
  Arch: arm64
  Version: Darwin Kernel Version 24.2.0: Fri Dec  6 18:56:34 PST 2024; root:xnu-11215.61.5~2/RELEASE_ARM64_T6020
  Available memory (MB): 16384
  Available CPU cores: 10

I noticed in 3.10.0 that the scroll often gets locked in iOS. Opening & closing the sidebar makes it scrollable again.


Add MARP presentation framework deployment instructions

Which Cloudflare product(s) does this pertain to?
Pages
Subject Matter
Add MARP presentation framework deployment instructions
Content Location
New document
Additional information
The framework: https://marp.app/
I couldn't find how to add frameworks myself, especially given that supporting it would be a matter of simply running npm run deck and pushing the resulting /public directory.
Where are frameworks defined?

Hi @pataquets! Thanks for your filing your interest in adding documentation for the Marp framework to Pages. Can you confirm where you found the instructions to run npm run deck and the setting /public as the build output directory?
As far as I can see, this CLI is the officially supported way to building with Marp and I'm not seeing any reference to those settings.
In order to add a framework guide for Pages, we need a widely adopted standard for how projects are structured and built :)

Closing this out due to a lack of information. If this is still an issue and I'm closing this out in error, feel free to re-open another issue (and tag me!).


Add greek translation.

Hello Cristian,
Thank you for CRUD. I would like to contribute a translation file for Greek as a gift.
Best regards,
Stamatis

Thank YOU! :-)
Just merged it into the 3.2 branch. It will be available for everyone on the next major update (when Laravel 5.4 also launches).
Cheers! Keep 'em coming.


Left align review outcomes and truncate the lengthy reviewer name.

Reviewer name is truncated after 10 alphabets. Review outcomes are left aligned and equally spaced with the score.

Closes #3348

Please use tailwind css truncate for hidden the text instead of trimming the name itself.
https://tailwindcss.com/docs/text-overflow
Trimming the text make things non-responsive and will also lead to a non-accessible text.
While these improvements are welcome, please also keep in mind that we are working on completely revamped submission all dashboard, that we plan to roll out soon as a preview feature.

We decided not to add truncation of reviewer names to Hypha. IT makes the list neater but if you want to know the full names it is unpractical.


Using clojure-lsp, diagnostics just sort of stop

I am not sure how to furnish more information about this but I will follow up however I am told: with no apparent pattern, diagnostics stop updating while I'm working. If I close the buffer and open it again that seems to fix it most of the time; likewise closing vim and starting over helps. Any ideas?

Can you check whether the clojure-lsp server has exited?  You can enable the debug and error messages for the clojure language server and capture the output.


flutter doctor fails: ios broken due python dependency

I did a brew upgrade and it upgraded to the latest python and broke Flutter.
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, v0.1.5, on Mac OS X 10.13.3 17D102, locale en-DE)
[✓] Android toolchain - develop for Android devices (Android SDK 27.0.3)
[!] iOS toolchain - develop for iOS devices (Xcode 9.2)
✗ Missing Xcode dependency: Python module "six".
Install via 'pip install six' or 'sudo easy_install six'.
[✓] Android Studio (version 3.0)
[✓] VS Code (version 1.20.1)
[!] Connected devices
! No devices available
see:
https://github.com/flutter/flutter/blob/master/packages/flutter_tools/lib/src/ios/ios_workflow.dart#L41

fixed by:
brew uninstall python@2
brew uninstall python


Choose place on map option

Add some kind of “Choose on map” near the place name input when there is not enough space and the map is not that visible (mobile devices)

Done


[iso19139:2007] add more generic char/anchor check

Anchor is used in quite places in the inspire profile on iso19139:2007
Add xxx_url property to keep backwards compatibility
Adds tests based on a record, derived from nationaalgeoregister.nl

coverage: 60.21% (+0.05%) from 60.156%
when pulling 03f42d5a7e76f118382293d3f409ed3b86c53522 on pvgenuchten:evaluate_anchor_generic
into ae98c2039819724b306b575d2ea850795955e22b on geopython:master.

@pvgenuchten - do you have a link to the raw XML used as the basis for your test record?
It may also be good to just add the XML snippet that this pull request is solving (with and without a /gmx:Anchor).
The code looks good to me, but I've no experience with iso19139:2007. Will leave open for comment for a couple of weeks prior to merging.

updated method text
raw xml is at
https://www.nationaalgeoregister.nl/geonetwork/srv/metadata/f44dac86-2228-412f-8355-e56446ca9933/formatters/xml

updated method text
raw xml is at https://www.nationaalgeoregister.nl/geonetwork/srv/metadata/f44dac86-2228-412f-8355-e56446ca9933/formatters/xml
a thing i would like your view on is this: if a list consists of charstring, anchor, charstring, anchor, would you expect:
{
name: [foo,la,lo,li]
url: [http://la,http:li]
}

or
{
name: [foo,la,lo,li]
url: [None,http://la,None,http:li]
}

I'd imagine it would be expected the name and URL list lengths would match, although not sure about use of None. An empty string may be better in this case?
@pvgenuchten do you have an example of the above from the XML you linked to that I could test the above question with?
I've tested the branch and new properties with the following Python:
>>> from owslib.iso import *
>>>
>>> md = MD_Metadata(etree.parse('test.xml'))
>>> iden = md.identification[0]
>>> iden.contact[0].organization_url
'http://standaarden.overheid.nl/owms/terms/Ministerie_van_Defensie'
>>> iden.contact[0].name_url
''
>>> iden.contact[0].name
'Ministerie van Defensie, Koninklijke Marine, Dienst der Hydrografie'
>>> iden.otherconstraints
['Geen beperkingen', 'Er zijn geen condities voor toegang en gebruik', 'Geen beperkingen voor publieke toegang']

>>> dist = md.distribution
>>> dist.specification_url
'http://inspire.ec.europa.eu/id/document/tg/hy'

Tested this branch with the live URL.
from owslib.util import openURL
from owslib.iso import MD_Metadata
from lxml import etree
url = 'https://www.nationaalgeoregister.nl/geonetwork/srv/api/records/1e9cf0ef-f905-46df-b4f8-2bab7a3808bb/formatters/xml'

response = openURL(url)
xml_content = response.read()
xml_tree = etree.fromstring(xml_content)
md = MD_Metadata(xml_tree)

iden = md.identification[0]
# ['Te gebruiken onder voorwaarden van ESRI licentie', 'Niet Commercieel, Geen Afgeleide Werken, Naamsvermelding verplicht, organisatienaam']

This picks up values from both CharacterString and Anchor.
<gmd:otherConstraints>
<gco:CharacterString>Te gebruiken onder voorwaarden van ESRI licentie</gco:CharacterString>
</gmd:otherConstraints>
...
<gmd:otherConstraints>
<gmx:Anchor xlink:href="http://creativecommons.org/licenses/by-nc-nd/4.0/deed.nl">
Niet Commercieel, Geen Afgeleide Werken, Naamsvermelding verplicht, organisatienaam
</gmx:Anchor>
</gmd:otherConstraints>

Failing CI issues are unrelated. Will merge shortly unless any issues raised.


Choose correct emoji picker when limited emoji set

If retort_limited_emoji_set is true, both the retort emoji picker (.retort-picker.emoji-picker) and the standard emoji picker (.emoji-picker) got processed, with the standard emoji picker being used.  This PR should fix it.

Doesn't work completely.  Retracting it.


Add Identity Verification FAQ page

It seems like the pattern here is to create a new page in admin.artsy.net and add a new route to Force.

The new identity verification FAQ page could be found here (and also editable): https://admin.artsy.net/page/identity-verification-faq
The page will be on e.g. https://staging.artsy.net/identity-verification-faq

IMO the page looks a bit too different visually, and these pages need a bit upgrades in general. But let's check in with @deliciousnachos.
Todos

[x] Check in with @deliciousnachos to make sure the visual design quality meets our (and users') expectation
[x] Time-box ~2 hours to see if there's any easy way to tweak visual style

Screenshot

While the whole change is quite minimal, there might be a few PRs (https://github.com/artsy/force/pull/4662 and https://github.com/artsy/force/pull/4254) from the past that might be worth reading before merging.

I'd wondered if we have an ability to use an MDXRenderer with palette...


Changed OSQP website to osqp.org

Changed osqp links to point to the new website.

Coverage increased (+0.3%) to 80.417% when pulling d593474aac1c703376b0c20b2e4d269aa299be13 on bstellato:master into c3577b90e38a339898aa445316c4591337571323 on cvxgrp:master.

Coverage increased (+0.3%) to 80.417% when pulling d593474aac1c703376b0c20b2e4d269aa299be13 on bstellato:master into c3577b90e38a339898aa445316c4591337571323 on cvxgrp:master.

Coverage increased (+0.3%) to 80.417% when pulling d593474aac1c703376b0c20b2e4d269aa299be13 on bstellato:master into c3577b90e38a339898aa445316c4591337571323 on cvxgrp:master.


Update Scenario 5 to include real world events

The old Example Event Log Entries were not accurate. I updated to the correct Event information.

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

#sign-off

@blakedrumm: I'm sorry - only the author of this article, @helenclu, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

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


Use seo_title in prior to title for Pages

Thanks @ababic for making this package open-source. In the meantime I have over 10 different copy-pasted menu snippet in my projects, so decided to use this package instead!
While adding the main menu is notice the seo_title isn't displayed in my custom menu template.

    {% for menu_item in menu_items %}

        {{ menu_item.text }}

    {% endfor %}

My homepage has for example the title website.com (as it's the site's root page). The seo_title of the homepage is Home (as I don't want to display website.com as my menu item).
I expected Home was returned when using menu_item.text in the upper snippet. Wagtail does use this seo_title as well to override the title attribute.
Does this make sense, of is there a strong reason why seo_title is not taken instead?

Thanks @robmoorman. I hope it makes you're life a little easier.This project came out of a very familiar pain.
I can't say using seo_title as menu text is something I've ever thought about until you mentioned it here. If I had to come up with a reason for preferring title over seo_title, it would be that, in my experience, seo titles are more likely to be changed and tweaked over a pages life-span, which could be bad fit. I feel like editors generally concerned with SEO should be free to tweak a page's meta data without significantly effecting the user's experience.
But, all of that may be beside the point. Each menu item is either a MenuItem object or a Page object, in which case, it's possible to access the page and output any field you like. href and text are simply attributes that get added for consistency.
I feel like the best option for you here, though, would be just to add 'Home' as the link_text value on the menu item linking to that page. link_text on a MenuItem is preferred over the page's title value if it is defined.
Does this help you?

Thanks! I noticed the link_text and used that for now. I agree with the changes over time and SEO specialists better be not changing critical UX components like menu's.


[CONTRIB] Add PopenWorker process recycling

Background processes (e.g. builds during autotuning) can sometimes accumulate state or leak memory. This adds the ability for PopenWorker processes to optionally be recycled after a specified number of uses.

Wonder what others think though? @shingjan ?

Very interesting, we observe the same behaviour with PopenWorker during tuning and our workaround is also very similar. Would be happy to learn about how you guys figured out the problem and do you have any trace on the root cause or potential fix. A minimum reproducible example would also be appreciated!

That's exactly one issue that we recently identified. Thank you so much for this fix! Also CC @tqchen as the original author of PopenWorker

Do we have an existing issue for the memory leak stuff? I think based on some internal data we suspect it's in tvm.lower somewhere.

Just created one #11096.

LGTM too! BTW, if maximum_uses is set, while the process is run async (e.g. MetaSchedule RPCRunner), we might want some logic to make sure synchronization happens before recycling the child processes, which is beyond the scope of this PR

Thanks @petersalas for bringing this workaround, and @AndrewZhaoLuo @shingjan @zxybazh for review and discussion :-))


Gimli wrongly assumes some pointer sizes are native

I noticed 64-bit dwarfdump failing on 32-bit executables. I believe it assumes in multiple places that addresses are native, instead of using whichever is the appropriate one based on context. For instance: https://github.com/gimli-rs/gimli/blob/master/src/cfi.rs#L1228. Changing this to a hardcoded 4 caused dwarfdump --eh-frame on a 32 bit executable to produce the correct output, instead of panicking midway. It still fails when parsing other sections, so that's probably not the only case.

That's the only place I could find that is wrong. Did you suspect more?

I suspect more because it still fails to parse other sections than eh-frame (dwarfdump without arguments fails).

Are you able to provide a 32-bit ELF that fails on sections other than eh-frame?

The CIE address size is fixed in #325. I'm unable to reproduce any other errors with 32-bit ELF.


Create event button does nothing

Subject: Create event button does nothing
Description:
Nothing
Results:
I entered all the details of the event but pressing the "create" button does nothing. Nothing happens, no error message. Nada.
I use Windows 10 and Firefox browser.
Backend version: develop-3cdcce6b
Frontend version: develop-3cdcce6b
User Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:95.0) Gecko/20100101 Firefox/95.0
Page: https://app.couchers.org/event/new
User: hekemon (7040)

Can't reproduce.


Account Recovery Key improvements

Expected Behavior
TBA
Notion doc: https://www.notion.so/clabsco/Account-Key-Recovery-Exploration-62e4078a9950418abb7f2868d5b7373c
Google doc: https://docs.google.com/document/d/1X2E5ore11XMNgFnA92ow-NARTOY2osWZIiDekJxAE_8/edit
Current Behavior
Atm account key consists of 24 randomly chosen English words. The assumption is that this approach is bad for a couple of reasons, among the main of them are:

Only English words are available atm, which is a problem for the users who don't speak English (a presumably big chunk of our potential customers);
Users don't choose the words themselves, they are selected randomly by the algorithm, which means it is harder for the end-user to memorize their account key.

I am going to close this Epic in favor of https://github.com/celo-org/celo-monorepo/issues/7240, which contains more detail on the approach we are planning to take.


Add Processor object at runtime

Currently, Processor is a pure client side concept. The corresponding object at runtime is Task. At runtime, we don't have Processor object at runtime.
This makes the coding a little weird. E.g. in #1049, client set configuration in DataSinkProcessor. But, at runime, DataSinkTask read out this configuration. So, the configuration read/write is done in two classes.
object DataSinkProcessor {
  def apply(dataSink: DataSink,
            parallelism: Int,
            description: String = "",
            taskConf: UserConfig = UserConfig.empty)(implicit system: ActorSystem): Processor[DataSinkTask] = {
    Processor[DataSinkTask](parallelism, description = description,
      taskConf.withValue[DataSink](DataSinkTask.DATA_SINK, dataSink))
  }
}

And
class DataSinkTask (context: TaskContext, conf: UserConfig) extends Task(context, conf) {
  private val sink = conf.getValue[DataSink](DATA_SINK).get
}

A better solution is to support Processor object at runtime. Task can get its processor by
taskContext.getProcessor.getXXXConf

In this way, we can make the code organized better.
And I also believe a runtime Processor object can hold more info than conf which will benefit runtime task management, though I don't have any concrete example.

And also this can help clarify several concepts. E.g. at runtime, we have TaskConfig, is it different for different tasks in the same processor?

I'd say Processor belongs to DAG, a logical plan while Task is a runtime instance of physical plan. We'd better not mix the two.

@manuzhang my guesstion is to make Task, at runtime, able to get info about its Processor.

Certain metadata held in the logical plan should be available in the physical plan. Both logical and physical might even share certain traits. Worth reviewing IMO

On Jun 26, 2015, at 1:17 AM, Weihua Jiang<EMAIL_ADDRESS>wrote:
@manuzhang my guesstion is to make Task, at runtime, able to get info about its Processor.
—
Reply to this email directly or view it on GitHub.

-1
Reason:

TaskContext already contains many information, like paraliism, description, which is Processor provides.
Some Processor field like taskclass is not useful for Task implementation.
Some field will be changed when passing to runtime, like taskConf. It will merge with worker config.
It is risky to serialize user defined Processor and pass them to tasks. As we don't know what fields user's Processor may define.


mac-24 failing salt state application

When applying states to mac-24 in the devicelab, its failing with:
    Data failed to compile:
----------
    Rendering SLS 'base:flutter.code_signing' failed: while parsing a block mapping
  in "<unicode string>", line 7, column 1
did not find expected key
  in "<unicode string>", line 21, column 2
```

this was due to a value being read from pillar which had a newline in it, causing the state to fail. After `trim`ming the value read, it works fine.

Fixed by 492062.

Another file needed this fix : 492190


Ensure governments have content ids

The previous data migration generates content_id's for all governments, but these changes ensure that governments have content_id's going forward.

I'm hoping the tests will pass here once https://github.com/alphagov/whitehall/pull/5178 is merged.


Question about hardware support

Hello team,
I would like to buy a laptop pc to test apollo 2.5 above and I don't really know the requirements in terms of GPU, video memory and RAM memory ....
I plan to take a gaming PC with an RTX 2060, 16 GB RAM, 512 GB SSD and test Apollo 2.5 on it.
Can you confirm that this machine has the characteristics necessary to run Apollo 2.5 ???
Thank you in advance for your answer.

For Apollo 6.0 and master, RTX 2060 is sufficient to run.
I am afraid that Apollo 5.5 and below may not work well with 2060 however.
@jinghaomiao @Capri2014 @xiaoxq Do you know the GPU support status of Apollo 5.5- ?

Thanks for the feedback, I suspected that the architecture is recent to work with the old versions of Apollo.

Hi @insa2020, I am going to close this issue for now. If you have other questions, feel free to open another issue. Thanks for supporting Apollo.


Fix Travis errors

See LaxarJS/ax-developer-tools-widget#30 / LaxarJS/grunt-laxar#91.
There should be one version variable in the Travis config for each LaxarJS Bower dependency so that we don't get any version conflicts

https://travis-ci.org/LaxarJS/ax-headline-widget/builds/96241784

Fixed on master


pubsubclient error code 5

Hello.
I am trying to make a reconnect function for my program to handle any unexpected disconnects.
void reconnect()
{
  while (!client.connected())
  {
    client.disconnect(); // unsub and disconnect for good mesure.
    client.unsubscribe(cmdTopic);
    client.setServer(broker, port);
    //client.setCallback(callback);
    Serial.print("Attempting MQTT connection... ");

    if (client.connect(cliantID))
    {
      Serial.println("reconnected!");
      client.publish(stateTopic, "connected");
      client.subscribe(cmdTopic);
    }

    else
    {
      Serial.print("Failed to connect. Connection status: ");
      Serial.println(client.state());
      Serial.println("Attempting to reconnect in a few seconds.");
      delay(2000);
    }
  }
}

When I manually reset my wifi connection to test the functionality of the program, the "client.state()" function returns error code "-2" as expected. However, when the Wi-Fi comes back online, client.state() returns error code "5" and refuses to reconnect and return for the "reconnect()" function.
If anyone is able to help me understand what error code "5" is and how I can solve it, that would be excellent.

Error resolved. I still dont know what error 5 is, but changing client.connect(cliantID) to client.connect(cliantID, mqttUser, mqttPassword) solved my issue.

Error resolved. I still dont know what error 5 is, but changing client.connect(cliantID) to client.connect(cliantID, mqttUser, mqttPassword) solved my issue.

The meanings of the error codes are documented here: https://pubsubclient.knolleary.net/api#state
An error code of 5 means unauthorized - so adding your username and password was the right answer.

The meanings of the error codes are documented here: https://pubsubclient.knolleary.net/api#state
An error code of 5 means unauthorized - so adding your username and password was the right answer.


sqlite3 error when running starting_with_frbpoppy.py

I followed these steps, and got the following error:
>> conda create -n frbpoppy python=3.8
>> conda activate frbpoppy
>> git clone https://github.com/davidgardenier/frbpoppy.git
>> cd frbpoppy
>> python3 setup.py develop
>> python3 examples/_starting_with_frbpoppy_.py
cosmic_pop.py | Generating complex population
Traceback (most recent call last):
  File "examples/_starting_with_frbpoppy_.py", line 14, in <module>
    cosmic_pop.generate()
  File "/hyrule/data/users/kshitij/frbpoppy/frbpoppy/cosmic_pop.py", line 499, in generate
    self.gen_dist()
  File "/hyrule/data/users/kshitijfrbpoppy/frbpoppy/cosmic_pop.py", line 126, in gen_dist
    n_model = self.dist_func()
  File "/hyrule/data/users/kshitij/frbpoppy/frbpoppy/cosmic_pop.py", line 122, in <lambda>
    self.dist_func = lambda: NumberDensity(model=model, **kwargs)
  File "/hyrule/data/users/kshitij/frbpoppy/frbpoppy/number_density.py", line 31, in __init__
    m = self.dt(z=np.array([z_max]))
  File "/hyrule/data/users/kshitij/frbpoppy/frbpoppy/precalc.py", line 352, in lookup
    d = c.execute(query, [str(r)]).fetchone()
sqlite3.OperationalError: disk I/O error

Given the error is a disk I/O error, I would presume this might have to do with limited disk space or memory issues.
Do you have write permissions and enough space ( ~100MB) in memory / on the drive you're trying to access? (frbpoppy/data/models/universe)
Hope this helps, but otherwise I would recommend checking Stackoverflow for 'SQL disk I/O error' and seeing which case is applicable to you.

It wasn't a disk space issue, but I somehow got it working.

Excellent to hear!


[Castanets] Test Process 5

Process Description
This process runs training process of Iris dataset version 5.
Payload

version: 5
issue_id: 5

Castanets process has been started.
Name | MLOps Example
Description | Best practice using Castanets in MLOps Field.

Click, clack. We are moving forward!
Review stage changed from Start to Data Processing. Workflow was triggered for this stage.

    flowchart LR
        data_processing[Data Processing]:::Running --> training[Training]:::Pending --> Deployment[Deployment]:::Pending

    classDef Done fill:#2da44e,stroke:#fff,color:white
    classDef Running fill:#bf8700,stroke:#fff,color:white
    classDef Pending fill:#888,stroke:#fff,color:white

Stage Description
📣 New version of dataset released.

Name: Iris Dataset
Version: 5

You can check the dataset here: Iris Dataset Link
Required Reviews
At least 1 approvals are needed to move this process forward.
Requested reviewers:

@FYLSunghwan (MUST REVIEW)
@harrydrippin

/approve

Click, clack. We are moving forward!
Review stage changed from Data Processing to Training. Workflow was triggered for this stage.

    flowchart LR
        data_processing[Data Processing]:::Done --> training[Training]:::Running --> Deployment[Deployment]:::Pending

    classDef Done fill:#2da44e,stroke:#fff,color:white
    classDef Running fill:#bf8700,stroke:#fff,color:white
    classDef Pending fill:#888,stroke:#fff,color:white

Stage Description
👩🏫 Training with Iris Dataset v5 is triggered!

Model: Simple SVM Classifier Model

You can check the training job here: Azure ML Studio
Required Reviews
At least 2 approvals are needed to move this process forward.
Requested reviewers:

@FYLSunghwan (MUST REVIEW)
@harrydrippin

@harrydrippin It looks like you have to review this training process.
The training metric looks good to me.
Give me some ideas!
(or Approve this process 😄 )

/approve

Azure ML Studio Alert
👩🏫 Training Result
Run Details:
Experiment/Pipeline ID: mlops-example-master_1654500861_5d0f333d

Run ID
Parameter
Value

mlops-example-master_1654500861_5d0f333d
Kernel type
linear

mlops-example-master_1654500861_5d0f333d
Penalty
1.0

mlops-example-master_1654500861_5d0f333d
Accuracy
0.933

mlops-example-master_1654500861_5d0f333d
precision
0.933

mlops-example-master_1654500861_5d0f333d
recall
0.933

mlops-example-master_1654500861_5d0f333d
f1-score
0.933

mlops-example-master_1654500861_5d0f333d
confusion_matrix
aml://artifactId/ExperimentRun/dcid.mlops-example-master_1654500861_5d0f333d/confusion_matrix

mlops-example-master_1654500861_5d0f333d
confusion_matrix_unnormalized
aml://artifactId/ExperimentRun/dcid.mlops-example-master_1654500861_5d0f333d/confusion_matrix_unnormalized_1654501003.png

mlops-example-master_1654500861_5d0f333d
confusion_matrix_normalized
aml://artifactId/ExperimentRun/dcid.mlops-example-master_1654500861_5d0f333d/confusion_matrix_normalized_1654501003.png

Model Pushed to:

mlops-example-master:4

View in Azure ML Studio

Also LGTM to me 😊 Let's move forward.

/approve

Click, clack. We are moving forward!
Review stage changed from Training to Deployment. Workflow was triggered for this stage.

    flowchart LR
        data_processing[Data Processing]:::Done --> training[Training]:::Done --> Deployment[Deployment]:::Running

    classDef Done fill:#2da44e,stroke:#fff,color:white
    classDef Running fill:#bf8700,stroke:#fff,color:white
    classDef Pending fill:#888,stroke:#fff,color:white

Stage Description
🛫 Deployment of Iris Model v5 is triggered!

Deploy Model: mlops-example:v5

You can check the deployment process here: Azure ML Studio
Required Reviews
At least 1 approvals are needed to move this process forward.
Requested reviewers:

@FYLSunghwan (MUST REVIEW)
@harrydrippin


Add voronoi_tessellation tool

For the contributor:

[x] - I have read the CONTRIBUTING.md document.
[x] - License permits unrestricted use (educational + commercial).
[x] - This PR adds or updates a tool or tool collection.

[x] - This PR adds a new tool or tool collection.
[ ] - This PR updates an existing tool or tool collection.
[x] - Tools added/updated by this PR comply with the Naming and Annotation Conventions for Tools in the Image Community in Galaxy (or explain why they do not).

[ ] - This PR does something else (explain below).

The added tool takes an image with labels as input and yields an image with the corresponding Voronoi tessellation (aka Voronoi diagram, Dirichlet tessellation). This mimics the behavior of the ImageJ function Process ‣ Binary ‣ Voronoi: https://bioimagebook.github.io/chapters/2-processing/6-transforms/imagej.html#voronoi
xref #105

I don't understand much about images, but are both images included here supposed to be black and the same size?

Short answer: The images are fine, I just double-checked them.
Long answer: They are not really black :)
In [1]: import skimage.io

In [2]: skimage.io.imread('input1.tiff')
Out[2]:
array([[0, 0, 0, 0, 0, 0, 3, 3, 3, 3],
       [0, 1, 1, 0, 0, 0, 3, 3, 3, 3],
       [0, 1, 1, 0, 0, 0, 3, 3, 3, 3],
       [0, 0, 0, 0, 0, 0, 3, 3, 3, 3],
       [0, 0, 0, 0, 0, 0, 3, 3, 3, 3],
       [0, 0, 0, 0, 0, 0, 3, 3, 3, 3],
       [0, 0, 0, 0, 0, 0, 0, 4, 4, 4],
       [0, 2, 2, 0, 0, 0, 0, 4, 4, 4],
       [0, 2, 2, 0, 0, 0, 0, 0, 0, 0],
       [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]], dtype=uint8)

In [3]: skimage.io.imread('input1_result.tiff')
Out[3]:
array([[1, 1, 1, 1, 3, 3, 3, 3, 3, 3],
       [1, 1, 1, 1, 1, 3, 3, 3, 3, 3],
       [1, 1, 1, 1, 1, 3, 3, 3, 3, 3],
       [1, 1, 1, 1, 3, 3, 3, 3, 3, 3],
       [1, 1, 1, 1, 3, 3, 3, 3, 3, 3],
       [2, 2, 2, 2, 3, 3, 3, 3, 3, 3],
       [2, 2, 2, 2, 2, 3, 3, 4, 4, 4],
       [2, 2, 2, 2, 2, 4, 4, 4, 4, 4],
       [2, 2, 2, 2, 2, 4, 4, 4, 4, 4],
       [2, 2, 2, 2, 2, 2, 4, 4, 4, 4]], dtype=uint8)

The pixel values just all are very close to 0, which makes it look black, but in fact it's very dark gray. The exact values do not really matter, they are just arbitrary labels for distinct image regions.

Ok, as I said, I have no clue about images ;)


Cilppy 'invalid metadata' errors

I installed clippy in my project, but I'm having an issue that I could not solve.
This is how I added clippy:
      devShells."dev-${crateName}-rust" = config.nci.outputs.${crateName}.devShell.overrideAttrs (old: {
        packages = (old.packages or [ ]) ++ [ pkgs.rust-analyzer pkgs.clippy ];
      });

And this is the error I get:
error[E0786]: found invalid metadata files for crate `serde`
   --> src/json.rs:100:30
    |
100 |                     _ => Err(serde::ser::Error::custom(format!(
    |                              ^^^^^
    |
    = note: invalid metadata version found: /my/lovely/project/target/debug/deps/libserde-b13d990448a515c7.rmeta

For more information about this error, try `rustc --explain E0786`.

I'm still investigating the issue, but it seems like I'm using the wrong rustc version for clipppy. I tried the cleaning the target directory and applying rust-overlay following "nci/rust-overlay", but no success.
Do you have any ideas?
Also, I think it would be a great idea, to expose some configuration to add these tools easily.

Instead of using the nixpkgs version of these tools you should use the perSystem.nci.toolchainConfig option to add these tools. Like here:
{
	nci.toolchainConfig = {
		channel = "stable";
		components = ["rust-analyzer" "rust-src" "clippy" "rustfmt"];
	};
}

(note that if you use a rust-toolchain.toml file nci will automatically use that)

Oh, nice that sloved my problem!

I have a followup question: my main environment was fixed, but I'm also using pre-commit hooks. I can supply custom tools to these, is there way to get these from nci?
I was trying to get it with config.nci.toolchains.shell, but I had no luck yet..

config.nci.toolchains.shell is a derivation with all the components, so you should be able to do something like "${config.nci.toolchains.shell}/bin/cargo (or other binaries).


Create package structure

Initialized an NPM package for the app and created stubs of client and server programs. All 4 programs (controller, client, daemon, frontend) will live in the same package so they can share dependencies and source code.

server.js is the entrypoint for the daemon. It should be short and just trigger other code.
client.js is the entrypoint for the controller or client. It should be short and just trigger other code.
src will contain our classes. It will be shared among all 4 programs so you can just import any preexisting code.

Not included here, but will be needed:

Unit testing framework (I did some research and would recommend Jest).
CI/CD support (Travis CI).

This looks good to me. Not sure if we should include unit testing and CI/CD before merging to master though.

This looks good to me. Not sure if we should include unit testing and CI/CD before merging to master though.

@alexzma Yeah, I expect that can be a separate PR. This will let us start coding in the meantime.

@alexzma Yeah, I expect that can be a separate PR. This will let us start coding in the meantime.

That sounds good. I'll approve the merge then.

That sounds good. I'll approve the merge then.


v2.3.5-git :: Does not renew

I have:
  "renew-window": "84d",
  "warn-window": "85d",

After a renew this happen:
In status page:
Renew in ~days
..
..
Renew in ~seconds
..
..
After 0 seconds :  Finished Successfully (confusing what has finished, was that formerly On going ?)
And yes, I get after a day on 21 January , the MDMessageCmd message : Expiring
Now on 24 January it still not renewed, it should renew 22 January (warn-windows 85d and renew-window 84d)
And status page says still Finished Successfully.
And in the log every 12 hours:
mod_md_drive.c(196): AH10055: md watchdog run, auto drive 1 mds
mod_md_drive.c(218): AH10107: next run in 12 hours
When I restart, then it is renewing. I keep it running for an other day.
Must I wait longer  ?
certificate-status
{
"valid": {
"from": "Sat, 16 Jan 2021 11:30:23 GMT",
"until": "Fri, 16 Apr 2021 11:30:23 GMT"
},
"rsa": {
"valid": {
"from": "Sat, 16 Jan 2021 11:30:23 GMT",
"until": "Fri, 16 Apr 2021 11:30:23 GMT"
},
"serial": "03723208C9D408490B6DD613B1CE6648B8F6",
"sha256-fingerprint": "b1eafe17de8d54f70867b5d65b2b757a5ee6364af04f9e55c7069a361dc6435d"
},
"renewal": {
"cert": {}
}
}
md-status
{
"version": "2.3.5-git",
"managed-domains": [
{
"name": "apachelounge.com",
"domains": [
"apachelounge.com",
"www.apachelounge.com",
..
..
],
"contacts": [
<EMAIL_ADDRESS>],
"transitive": 1,
"ca": {
"account": "ACME-.letsencrypt.org-0000",
"proto": "ACME",
"url": "https://acme-v02.api.letsencrypt.org/directory",
"agreement": "accepted"
},
"state": 2,
"renew-mode": 2,
"renew-window": "84d",
"warn-window": "85d",
"must-staple": false,
"proto": {
"acme-tls/1": [
"apachelounge.com",
"www.apachelounge.com",
...
...
]
},
"stapling": true,
"cert": {
"rsa": {
"valid": {
"from": "Sat, 16 Jan 2021 11:30:23 GMT",
"until": "Fri, 16 Apr 2021 11:30:23 GMT"
},
"serial": "03723208C9D408490B6DD613B1CE6648B8F6",
"sha256-fingerprint": "b1eafe17de8d54f70867b5d65b2b757a5ee6364af04f9e55c7069a361dc6435d",
"ocsp": {
"status": "good",
"valid": {
"from": "Fri, 22 Jan 2021 12:00:00 GMT",
"until": "Fri, 29 Jan 2021 12:00:00 GMT"
},
"renewal": {
"name": "apachelounge.com",
"finished": true,
"notified": false,
"last-run": "Sun, 24 Jan 2021 04:33:46 GMT",
"errors": 0,
"last": {
"status": 0,
"detail": "certificate status is GOOD, status valid Fri, 22 Jan 2021 12:00:00 GMT - Fri, 29 Jan 2021 12:00:00 GMT",
"activity": "status of certid faa295a79b98a805bdd4d9e06f3b1275abab5c35, reading response"
}
}
}
},
"valid": {
"from": "Sat, 16 Jan 2021 11:30:23 GMT",
"until": "Fri, 16 Apr 2021 11:30:23 GMT"
}
},
"renew-at": "Fri, 22 Jan 2021 11:30:23 GMT",
"watched": true,
"renew": true,
"renewal": {
"name": "apachelounge.com",
"finished": true,
"notified": true,
"last-run": "Thu, 21 Jan 2021 17:00:35 GMT",
"errors": 0,
"last": {
"status": 0
},
"cert": {}
}
}
]
}

Above I said that it is renewing when I restart Apache.
But... it is not renewing at restart, see:
Restart.txt
certifcate-status and md-status nothing changed.
I shall wait an other day.

Above I said that it is renewing when I restart Apache.
But... it is not renewing at restart, see:
Restart.txt
certifcate-status and md-status nothing changed.
I shall wait an other day.

I the folder md/staging/apachelounge.com there is the file job.json with time stamp when MDMessageCmd message : Expiring
{
  "name": "apachelounge.com",
  "finished": true,
  "notified": true,
  "last-run": "Thu, 21 Jan 2021 17:00:35 GMT",
  "errors": 0,
  "last": {
    "status": 0
  },
  "log": {
    "entries": [
      {
        "when": "Thu, 21 Jan 2021 17:00:48 GMT",
        "type": "finished"
      },
      {
        "when": "Thu, 21 Jan 2021 17:00:48 GMT",
        "type": "message-expiring"
      },
      {
        "when": "Thu, 21 Jan 2021 17:00:35 GMT",
        "type": "starting"
      }
    ]
  }
}

I the folder md/staging/apachelounge.com there is the file job.json with time stamp when MDMessageCmd message : Expiring
{
  "name": "apachelounge.com",
  "finished": true,
  "notified": true,
  "last-run": "Thu, 21 Jan 2021 17:00:35 GMT",
  "errors": 0,
  "last": {
    "status": 0
  },
  "log": {
    "entries": [
      {
        "when": "Thu, 21 Jan 2021 17:00:48 GMT",
        "type": "finished"
      },
      {
        "when": "Thu, 21 Jan 2021 17:00:48 GMT",
        "type": "message-expiring"
      },
      {
        "when": "Thu, 21 Jan 2021 17:00:35 GMT",
        "type": "starting"
      }
    ]
  }
}

I removed the file md/staging/apachelounge.com/job.json
Did a restart, and yes it is renewed:
in the log:
md_result.c(254): md[apachelounge.com] detail[The certificate for the managed domain has been renewed successfully and can be used from Thu, 28 Jan 2021 09:39:51 GMT on.]
And status page says still Finished Successfully.
I leave it running an other day to see what happens. And after that day I restart and remove mod_md.

I removed the file md/staging/apachelounge.com/job.json
Did a restart, and yes it is renewed:
in the log:
md_result.c(254): md[apachelounge.com] detail[The certificate for the managed domain has been renewed successfully and can be used from Thu, 28 Jan 2021 09:39:51 GMT on.]
And status page says still Finished Successfully.
I leave it running an other day to see what happens. And after that day I restart and remove mod_md.

Hmm, strange. I will look into this.

Hmm, strange. I will look into this.

After a day :
md_result.c(254): md[apachelounge.com] detail[The certificate for the managed domain has been renewed successfully and can be used from Fri, 29 Jan 2021 09:42:33 GMT on.]
Strange : in message above it says  can be used from Fri, 28 Jan. Confusing.
And status page says still Finished Successfully. What does this mean, formerly I saw ...has been renewed successfully ?
On the status page already from my first post above (when counted down to 0 seconds)  it stays Finished Successfully. Very confusing.
Now I am going to restart, stay tuned.

After a day :
md_result.c(254): md[apachelounge.com] detail[The certificate for the managed domain has been renewed successfully and can be used from Fri, 29 Jan 2021 09:42:33 GMT on.]
Strange : in message above it says  can be used from Fri, 28 Jan. Confusing.
And status page says still Finished Successfully. What does this mean, formerly I saw ...has been renewed successfully ?
On the status page already from my first post above (when counted down to 0 seconds)  it stays Finished Successfully. Very confusing.
Now I am going to restart, stay tuned.

Did the restart:
MDMessageCmd message : Installed and oscp-renewed (with renew not seen MDNotifyCmd message)
Conclusion: something is wrong and things  are confusing

Did the restart:
MDMessageCmd message : Installed and oscp-renewed (with renew not seen MDNotifyCmd message)
Conclusion: something is wrong and things  are confusing

Said above  miss the MDNotifyCmd message, need it again to restart  Apache.
Forgot: missing also MDMessageCmd renewed

Said above  miss the MDNotifyCmd message, need it again to restart  Apache.
Forgot: missing also MDMessageCmd renewed

I have seen on my own server that sometimes, the "success" message was missing after a problem was reported once and then a retry did renew. Seems there is a bug in the notification state. Will look.

I have just released beta v2.3.7 which should address that issue. Feedback appreciated!

It should renew again now ?
Notification was not my point.  It is not renewing.
At the moment cannot test. Other applications on the box are about to renew, and that does not work if mod_md is installed. See for example #253
I shall try to test ASAP

Started again testing with the same config.
This happens till now::
MDMessageCmd messages:
13:41:08 I got first the message: installed
13:41:10  and then the message: renewing (? nothing is renewing, and the log says 13:41:10 .... no need to renew)
Looks not ok.
In status activity: Renew 2021-02-09
Now I am waiting for the warn-window: 85d message and then after a day the renew should start (renew-window: 84d)
And again in staging the file  in md/staging/apachelounge.com/job.json
{
  "name": "apachelounge.com",
  "finished": false,
  "notified": false,
  "notified-renewed": false,
  "errors": 0,
  "last": {
    "status": 0
  },
  "log": {
    "entries": [
      {
        "when": "Wed, 03 Feb 2021 12:41:10 GMT",
        "type": "message-renewing"
      }
    ]
  }
}

Ah, good catch. The new "renewing" was issued way too early, before it was checked that this is actually necessary. Just made a fix.
You want a release to verify?

Not necessary to check if v2.3.7 is renewing.

Think you overlooked it:  Above I pointed two times about the mod_status page Activity column.
mod_status page activity column status page:
Activity
Renew in ~days
..
Renew in ~seconds
..
Finished Successfully  After 0 seconds
Stays Finished Successfully all the time also after renew.
Formerly it was also saying .....  .managed domain has been renewed successfully and can be used from Sun, 07.....

An other regression.
MDNotifyCmd script not called (MDMessageCmd fine).


Add filters to Nearby

This was inspired by #618 , but I decided to create a new issue as this is a much more general suggestion.
I wonder if it would be a good idea to have filters where people can filter out certain types of Nearby items. The most obvious usage would be for the "instanceOf" label, where someone could say they wanted "historic sites" or "suburbs" etc specifically, and only see those pins on the map. And of course, for the items that don't exist anymore, as per #618 . Maybe even filter for items that have or don't have Wikipedia articles, etc?
This would likely need to be done alongside #591 , as currently our range and location of pins is a bit restrictive.

Even I was thinking of the same thing as the app shows places inside fix radius around user's location.
And random important places are shown.

I would totally use this feature to filter out schools, to avoid the creepiness haha
When I go to a place where there are a lot of pins I might want to only show the important ones that are not closed. But once I have uploaded most of them and the pins are getting rare, I will probably want to show the other ones too.
What is important is probably subjective.

There is no concept of "importance" in Wikidata. I just meant that some people want to take pictures of all religious buildings, while other people want to take pictures of all religious building, it is just a matter of personal interests.
I started computing statistics about the "instanceOf" of the points we deal with, it will probably take a day or two before all results get computed but here are the results so far:
class-statistics.txt

Here are the types of items that have a latitude/longitude but do not have a picture:

 282548 mountain
 210804 human settlement
 165928 river
  94992 stream
  82413 village
  66246 hill
  44348 island
  34886 dam
  34651 movie theater
  34643 building
  31652 valley
  31146 unincorporated community
  25590 watercourse
  23946 lake
  23486 point
  23315 desa
  21930 fourth level administrative division in Indonesia
  21741 spring
  19563 town in China
  17906 canal
  17637 airport
  17610 park
  16816 wadi
  16611 hamlet
  16557 ravine
  16189 high school
  15103 radio station
  14727 lagoon
  13940 former building or structure
  12896 bight
  12389 rural commune of Vietnam
  12180 train station
  11878 ridge
  11632 house
  11104 township of the People's Republic of China
  10300 rural settlement of Russia
   9467 reservoir
   ...

Full file: stats2.txt
My computer crashed in the middle so there is no data for Europe/Africa. I will run my script again in a month, for now the data above gives an idea of what to expect.
As you can see:

There is a very long tail. If we want to cover 75% of the data we have to provide 40 types.
We can group types, for instance "river" and "stream". While we could get the SPARQL request to get parent classes, that would probably make the already slow request even slower. The pragmatic solution is probably to hard-code mappings from their QIDs to categories that make sense to our app, for instance Q4022 (river), Q47521 (stream) → "watercourse"

@nicolas-raoul Thanks! The data is very interesting, I actually had no idea there were so many. It is also interesting that there are more "rural commune of Vietnam"s than there are global train station points, lol.
This does complicate things a bit. Maybe we should come up with a simple prototype first, and then see if many people actually use the filters, before enhancing it by hardcoding mappings to improve coverage?
My suggestion is that we take all of the ones with >10k points, and remove the country-specific ones. Then in the filter UI we have a checklist with "Don't exist anymore", "Have Wikipedia articles", and "Instance of". If the user checks the Instance Of item, we take them to a separate fragment that has all the points I mentioned and they can choose which ones to check.
What do you guys think?

I'd LOVE to have a possibility of filtering the results (filtering out streets in my case, photographing them is BORING :-) ).
I was thinking that maybe we could use parts of the queries used by Petscan (in the Wikidata tab, see attached image). You can just type any number of properties or items separated by commas and they will get filtered. This is an option for power users anyway.

Here is my proposed design for this filtering feature:

Actually I am quite happy with how design evolved. Here are my decision parameters:

Since they were one of the suggested element in material design guidelines for filtering, I decided to use chips. The other alternative is checkboxes.
The first field, state of the place has limited number of options and user input would be nonsense. So I decided to use filter chips with them which you can click to select/deselect.
The second field will have almost 40 options, so I thought writing some inputs could help to choose. Thus, I decided to use input chips with this field.
It would be great if we could design small new icons for each options, not necessary though.
This design also provides user to see their selections on the same screen.

My only concern is, is it hard to discover the input field on second option? However, I think people used to use this types of action, ie. gmail has the same.

Can't wait to hear your feedbacks:)

Hello Neslihan, it looks great from a UX perspective. I am worried that it's not customizable enough, though. Will it be possible to filter custom classes of objects? For example, Czech Republic has all streets imported and I'd like to filter them out. It could be the same for eg. buddhist temples in Nepal. Is it possible to enter any type of class or will your tool be limited to only 40 options?

Hi @neslihanturan , thanks for the mockup!

I love the "search" field for place type, good thinking. :) If user discovery is a concern, maybe have a "search" icon next to the field?
Love the chips for place state.
I think checkboxes would suit place type better than chips. The reason is that people should be able to filter for more than one at a time. For instance, someone might want "everything except schools" whereas someone might want "only monuments", and another person might want "only schools and monuments", etc. So IMO with checkboxes, we can start with everything enabled, and then users can disable certain class types as they wish.

@VojtechDostal we were discussing the issue of classes here. Custom filters are doable AFAIK, however they would require quite a drastic change in implementation plans. If we go the custom filter route, I think we would need to re-query Wikidata with that parameter whenever the user submits a filter, which would lead to a long wait time while Wikidata is queried, and also increase code complexity. On the other hand, if we pre-select certain classes, the check would be internal, which would (1) take a lot less time to implement, and (2) the results for the user would be (almost) instant.
I suggest going with pre-selection for now, and if user response to the feature is overwhelmingly positive (like with our initial Nearby prototype... :)), we can switch to the more resource-intensive custom filter later.

Hmm, that's of little use to our community but I understand your reasons.
I originally envisioned an input box somewhere in settings which would permanently alter search results for the user for all his/her queries (unless they decide to change the settings). It could have worked like  Petscan which I mentioned in June last year (see above).

@VojtechDostal I revised my comment after looking through the code just now, I think it might be doable.
My suggestion for this: If the user types something in the search field that isn't one of our preset options (say, "street", although from the looks of Nicolas's stats.txt, that should be high enough in the hierarchy to make it to preset)... instead of displaying Neslihan's list, it would instead display the option "add as custom filter", which would then make it to the list of types. We may or may not be able to get this to persist (within the time allocated for this task), so there may be the inconvenience of having to create the custom filter again next time, but at least the option exists?

@misaochan agreed about checkboxes, I will search for the best way of displaying checked options on search row. Because I wouldn't prefer to expand the check list and review what I clicked there. Instead I would prefer to see what I included when check list is collapsed. On the other hand, we can not fit 40 element to one row if all of them are checked.
@VojtechDostal thanks for pointing out "except" case, I will reconsider the design accordingly.

Based on the discussions above, using checkbox seemed most appropriate method to select/deselect all and exclude some items.
My first suggestion is using checkbox with chips. When we checked some, they will be added to row as chips. The only concern of mine about this approach is, we may have 20 selected place types. Adding 20 chips to a row is open to discussion.

The second suggestion is using a text field, without displaying chips. User can only see the umber of checked place types with this option. To see their names, they should click edit text and they will be listed below. But I would prefer the first design.

I like suggestion 2 a lot more. :) With suggestion 1, there may be far too many types to display if the user selects "all except X". Displaying selected types at the top is a nice touch, too. If the user searches for a place type that isn't in the list, there should be an option to "add custom filter".
The pin styling according to place states is a nice idea, but I'm not sure how it would work. Firstly, I think we only have two useful states: "past object" (which is basically 'doesn't exist', but I think it's clearer because it indicates that the object used to exist), and "has Wikipedia article". Also, AFAIK the two states are not necessarily mutually exclusive - a place could both be a past object AND have a Wikipedia article (@nicolas-raoul can you confirm this?).

If the user searches for a place type that isn't in the list, there should be an option to "add custom filter".

But I think @nicolas-raoul mentioned that this could take too much time. But if we still want to include this, I can add such think into design 2

I am OK with both Nes' suggestions 1 and 2.
The performance problem is not only about custom filters, but might be also for built-in place types. For instance, let's say I select "school": I would probably expect the app to also include sub-classes of "school", such as "physico-mathematical boarding school" https://www.wikidata.org/wiki/Q4483543 . That is a rather time-consuming SPARQL request to perform.
I suggest running performance tests, here is how to get sub-classes: https://opendata.stackexchange.com/questions/9591/how-to-include-sub-classes-in-a-wikidata-sparql-query-example-when-querying
If it is too slow, a possible strategy could be to first get all items, and then send a request per item to get its details (ended or not, destroyed or not, all of its parent classes, whether it has a P18 or not, its label). More request, but the first results would surely come faster.
Personally I might not use Place types, because in my trips I am never overwhelmed by "too many items". I can understand that might be desirable by VojtechDostal if every single street of his city is an item, though.
Personally I would certainly use Place state, though. By the way, if I understand correctly "has photo" is the opposite of "needs photo", right? So can it not be simplified to 2 checkboxes?
[v] Current [v] Needs photo -> Only shows current items (so, excluding those which were destroyed or ended) that do not have a P18 yet
[v] Current [ ] Needs photo -> Shows all current items, with or without a P18
[ ] Current [v] Needs photo -> Shows all items (including destroyed/ended ones) that need a photo
[ ] Current [ ] Needs photo -> Show all items

I suggest the first (or maybe third) state to be the default one.
I agree with Josephine that pin colors are best used to show place states, rather than place types.
In a far future phase, pin shapes would be really cool, for instance a pin shaped as a train to indicate a train station, etc... but there are many many more important things to implement before ^_^

[v] Exists [v] Needs photo -> Only shows current items (so, excluding those which were destroyed or ended) that do not have a P18 yet
[v] Exists [ ] Needs photo -> Shows all current items, with or without a P18

I agree that "exists" covers all items but on the other hand it can be confusing to see "needs photo" images when it is deselected. So the question is should we first filter as "need/not need photo" then filter as "exists", or first as "exists" then "need/not needed".

[ ] Exists [v] Needs photo -> Shows all items (including destroyed/ended ones) that need a photo

To make it more clear, we can rename it to "only exists".

[ ] Exists [ ] Needs photo -> Show all items

Maybe "Only needs photo" would be better for this one then. So that the opposite would be all.
Additionally,

I agree with Josephine that pin colors are best used to show place states, rather than place types.

It already does indicate place states. But even if we reduce number of place states to two, I think we should preserve pin styles as 3, to be more clear.

Re: place states, why would we need "Needs photo" or "has photo" at all? After all, Nearby by its very definition is "nearby places that need photos", so every single Wikidata item that we even fetch would need a photo and not have a photo. I would think that place types just needs (1) "still exists" and (2) "has Wikipedia article"?

Re: place types, actually the implementation I had in mind was simple string matching, not a separate SPARQL query. We already fetch instanceOf as part of our initial Nearby query, so once the users select a particular place type, we just need to go through all the items that we have fetched and remove the ones whose instanceOf field matches a deselected checkbox. All done internally, no additional queries. This would easily work with custom filters because a custom filter is just a string after all.

An additional SPARQL query for place type filters would be detrimental for the user I think, as they would need to wait for Nearby to load all over again whenever a filter is modified. However it does have the advantage of being able to handle subclasses. But it would be much more time consuming to implement.

Re: place states, why would we need "Needs photo" or "has photo" at all? After all, Nearby by its very definition is "nearby places that need photos", so every single Wikidata item that we even fetch would need a photo and not have a photo. I would think that place types just needs (1) "still exists" and (2) "has Wikipedia article"?
I think we considered including Nearby Places Has Photo several times by saying it can help users to see example nearby photos. And including both would help us to solve the confusion of "what nearby photos means"

Re: place types, actually the implementation I had in mind was simple string matching, not a separate SPARQL query. We already fetch instanceOf as part of our initial Nearby query (that is, after all, how the "description" value of a place is poupulated), so once the users select a particular place type, we just need to go through all the items that we have fetched and remove the ones whose instanceOf field matches a deselected checkbox. All done internally, no additional queries. This would easily work with custom filters because a custom filter is just a string after all.
I agree to filtering what we already have

Seeing existing pictures is very useful in all places that are not super-touristic.
Looking at it, if I see almost no pictures on the map, I know that I should shoot everything interesting, whereas if there are many pictures it means that probably everything has been shot already I move on quickly.
Especially in the countryside, most interesting places do not have a Wikidata item in the first place.

Hmm, so in that case we are intending to merge viewing of existing pictures with Nearby? I was originally envisioning that we would eventually have a separate map of existing pictures in Explore, where it seems to be more appropriate in my opinion.
If you guys strongly feel that it should be merged with Nearby, I am OK with that, but @neslihanturan you do realize that this will increase your workload for this task hugely? Since we have not actually implemented a map of existing pictures, so you would need to handle all of that as well.

When I consider our future new UI plan which will be implemented at the end of 2019 and will include bottom tabs as Home, Nearby, Explore, My contributions, I thought it can be confusing to have 2 maps on both Nearby(we consider renaming nearby though) and Explore tab. So my vote is handling all map related tasks from one place.

@neslihanturan OK, I will leave the decision up to you. :) If you find that implementing a map of existing pictures takes too much time, you can just remove the filter for that and create an issue for a future enhancement. Maybe for next year's GSoC/Outreachy? ;)

Not that I have any power to decide, but as a user I would probably find it more convenient to have a single map. The name "Nearby" can be used for both nearby images and nearby places that lack images.

@nicolas-raoul I assumed Nearby naming will change not because has/lack images, it was because of search this area button. Sorry for mixing all issues together, but when it comes to UI decisions I try to connect dots.
To sum up the issue, it seems like we will go with the design 2, try to have a single map and have 2 chips instead of 3 (with better namings).

Sounds good!
Re: the naming, yeah, I think we were discussing this in another issue #2190 . I think the conclusion was that we want to stick to Nearby?


Updated JS to display extended details for a pet after click

I made some additions to script.js so that there is a container to display extended details for a pet when you click it.

Perfect.


Vis Agent State hiding

This small new feature has not been documented
https://github.com/FLAMEGPU/FLAMEGPU2/pull/1041

F9 to toggle orthographic project/ortho settings too:


chore(nodejs): update client ref docs link in metadata

Sweet! Hopefully Steffany or someone familiar with the Node.js client can take a look and see if anything is missing.
I see links to JobOptions are missing here: https://cloud.google.com/nodejs/docs/reference/bigquery/latest/bigquery/bigquery#google_cloud_bigquery_BigQuery_createJob_member_1
Are we setting up redirects from googleapis.dev and updating the links on cloud.google.com after this?

The same method also appears to be missing some description that is present in the googleapis.dev version: https://googleapis.dev/nodejs/bigquery/latest/BigQuery.html#createJob


crf1d did not calculate the transition cost of (xs[0], ys[0])

In the crf1d fuction of chainer-2.0.1/chainer/functions/loss/crf1d.py:
For xs[0], ys[0]:
score = select_item.select_item(xs[0], ys[0])
Why did the transition cost not calculate here?

As the document says, translation cost is calculated between each neighboring label pair y_{i-1} and y_{i}. We need to skip it for y_{-1} and y_{0}.
https://docs.chainer.org/en/latest/reference/generated/chainer.functions.crf1d.html#chainer.functions.crf1d


First Hop Route Creation in Session Response

Optimize route creation by returning the forwarding table entries to the initiating router as part of a successful session response.

Potentially complicated when involving a single router. Tread carefully.

Closing for now. Will re-evaluate in the context of general routing evolution.


Achievements

Description

Checklists
General Checks

[x] the branch is up to date with main/master
[x] the code works when pulled and run locally
[x] All CI checks pass
[x] all conflicts are resolved (if any)
[x] PR has a descriptive title
[ ] PR has appropriate labels and milestones for easy identification
[ ] PR it is assigned to the owner
[ ] reviewers are assigned
[ ] the PR contributes only one focused change
[ ] It is in the appropriate column in the project board (if necessary)
[ ] has short and clear description
[ ] is linked to an issue (if it is related)
[ ] feedback is addressed (if any and if it is appropriate feedback.)

Markdown

[ ] the markdown source is formatted
[ ] spelling and grammar is correct in all text
[ ] The markdown looks correct when you preview the file
[ ] all links and images work

@Prince4ademola  could you fix the error, please


Clarify user_dict in Extra Models

Awesome project you have going on! Keep up the good work! 🎉
I was reading through the docs and in the Extra Models section, the About **user_dict sub-section doesn't explain why there is a difference between using **user_dict vs **user_in.dict().
Also I wasn't sure if you meant to specify user_dict as a generic dictionary for the section as that object doesn't exist in the above code example, or did you mean to also continue to use user_in?

I think the docs should be clearer now, so I'll close the issue. But feel free to re-open it, add more comments or create new ones.


Missing representation of cycle_group point_at_infinity in the transcript

If the prover sends a point at infinity and, on the recursive verifier side, this is constructed as a cycle_group, calling point.get_value().on_curve() will be false because the transcript doesnt have a representation of cycle_group point at infinity (which seems to be just a flag).

cc @lucasxia01

Closed by https://github.com/AztecProtocol/aztec-packages/pull/7709


⚠ Cioos National CKAN has degraded performance

In c92f16c, Cioos National CKAN (https://catalogue.cioos.ca/) experienced degraded performance:

HTTP code: 200
Response time: 6120 ms

Resolved: Cioos National CKAN performance has improved in 2a41d5a after 9 minutes.


wip: wire-up Ledger hdwallet

Description

Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[ ] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)

closes #
Risk

Testing

Engineering

Operations

Screenshots (if applicable)

Current dependencies on/for this PR:

develop

PR #5336   👈

This comment was auto-generated by Graphite.

Merging as this has ops signoff