Query COUNT(*) takes too long

Hello,
With every render of page COUNT(*) is sent to database.
We have database with a lot of rows.
Sometimes count takes from 300 - 1000 ms.
Is there any way how to get number of rows from collection?
my idea is something like:
Instead of   rows.count which runs SQL query, use rows.length which return number of rows as well?

Gonna guess you're using Postgres? This might be interesting to you.
For users of every other database COUNT(*) is a faster implementation. I would be opposed to doing this in Ruby for those users. It would be smarter to either overload the way the count query is implemented only for Postgres or to allow the count method to be overridden somehow.

Iam using MySQL.
My Bad.
I was thinking that the number of elements could be obtained from the array of objects. BUT array of objects are limited by SQL clause with Limit, so the number of elements in the collection does not match the number of rows in DB.
Iam closing the ticket.
Thanks.


Added support for Vector FQCN and Vector as root for deserialization

What this PR changes:

Improve support for Vector serialization by adding FQCN (this is a fix is needed to undo part of https://github.com/hellofresh/carriers-service/pull/84/commits/07fdfbb36dd8cf20c71307ffba07a4d8685d0da7)
Improve deserialization support for a Vector as root.

👍


Upgrade dependencies

FS2 1.0.0
cats-effect 1.0.0
cats-core 1.4.0

Thanks. There's already a branch with the new deps (and some upcoming redesign), but maybe I'll merge this and release a version just for the dependency bumps


Align platform versions in SPM manifest and Xcode project

This PR:

Adds platform versions to the SPM manifest; we discovered this was missing while debugging https://github.com/apollographql/apollo-ios/pull/2015. This addition should allow SPM to correctly resolve deployment targets.
Moves the Xcode deployment versions configuration from each target to the project level. There is some personal preference to this change but I do also believe there is value in being able to set all deployment versions in one place (project) vs. the individual targets where it's easy to miss versions not being the same. I also changed the tvOS target to match Cocoapods, which specifies 9.1.

I saw that https://github.com/stephencelis/SQLite.swift/pull/1083 already attempted this but that PR seems dead and the fork has also been deleted. If this one is merged you can close #1083.
Question:

Is there any particular reason why SQLite.swift 0.13.0 bumped the macOS deployment target to 10.15? It seems at odds with the iOS deployment target of 9.0 which would have greater support for older APIs.

Thanks for the PR, tests are failing. Regarding MacOS 10.15, I'm not sure, I see it was changed in #1051. Perhaps it can be reverted.

Thanks for merging that @jberkel!
@NathanFallet it looks like you made the change to the macOS version in the 0.13.0 release. I've built the project using the 'SQLite Mac' with versions 10.15 down back to 10.10 and I don't get any warnings; do you recall any specifics of that particular change?

Seems to work fine on the CI with 10.10. If nobody objects, we can just set it back before making the next release. The problem is of course testing this on actual 10.10 systems.

@calvincestari You're right, I changed the deployment target instead of the base SDK. Sorry for that mistake.

@NathanFallet ok, I reverted it. It's probably worth doing a new release with the current master soon, can you take charge of it?

Hey @NathanFallet, no need to apologize. Thanks for the change both of you, I'm looking forward to getting our users onto the latest version.


Automatic test case generation given the swagger file for an api

I have written swagger file for some api and written some basic test cases for it using the pytest and pyswagger framework.
Can I automate the test case generation based on the swagger file ?
I will attach the swagger file and test-suite if you need to see it

Hi,
I've written a request template generation with limited randomness. You can check this document to see if this match your requirement.
If not, please describe your requirement more detailedly, and attach the swagger file if it's legal, :)

I am attaching the swagger file and test suite . I want the test suite to be generated automatically based on the swagger file given.
PFA
test_suite.tar.gz

I'm a little confused after checking your attachment. You've used render_all to generate request template for test, that's what I mentioned in earlier comment.
Did you mean if pyswagger can generate the whole py file containing test suites?

Yeah. That is  what I meant. I would be a complete automated test case generation by pyswagger.

Oh, that's an interesting topic, but I think it's not the scope that this project designed to cover.
In your context, the calling sequence of APIs is also random (compared to what we provide in pyswagger now, the calling sequence is fixed, only the input parameters are random). But in most APIs, the calling sequence of API is meaningful so making it random is not that helpful.
======== correct me if I'm misunderstanding your description ===========
Right now you can provide meaningful calling sequences of APIs, pyswagger could generate random input for you and bind parameters (ex, user_id returned by login API) via request template, I think these features could be a least but worked base for automated testing platform.

Please go through the test cases I have written for the swagger file which I have attached. It covers basic yet power test cases we can think of for any api.
I have just used  pyswagger, pytest and unit test frameworks. It is not difficult.I have written some test fixtures for that.
Basically it covers testing API with different sequence, with different random data types(I have used overriding technique which you had mentioned in your project ie req._p)
With this feature in your project. I helps many of the organisations.
Because it generates test cases if you just give the swagger file. :-)

I've checked & understood your test cases, they are straight forward API to use and thus have no calling sequence problem. However, comparing the work to be done (I can't even know how to implement it, maybe something like DeepCoder) and the scope this feature can be applied, I think it's not worthy to do it.
This library tends to be small and maintainable, so I would say no to this feature request.

okay no problem. Thanks for taking your time to go through  my code.


feat: add redshift query engine

Adds redshift query engine python packages. @czgu -- is the testing provided below and in #693 sufficient for providing this query engine as "tier 1"? if not, I'm more than happy to perform additional testing, just let me know what else you'd like to see :).
Testing

confirmed querybook make executes successfully after adding -r extra.txt in requirements/local.txt

Testing Screenshots

Language Specific Autocomplete supported for Amazon Redshift datatypes

Query execution

Query Engine execution provides status in UI

Query Engine generates logs

Authentication via IAM is supported

Federated Authentication via Identity Provider is supported

Hi Brooke, can you add RedshiftQueryExecutor similar to SnowflakeQueryExecutor? We can use that for better fine tuned behaviors such as error parsing.
In addition, would it possible to use better forms for connection details instead of free form JSON? You can use StructFormField, checkout presto_executor_template in PrestoQueryExecutor to see the format.
In addition, just curious, would it be possible to get % progress for redshift? No worries if it doesn't provide that info

Hi @czgu,
Thanks for taking a look at this so quickly :)

can you add RedshiftQueryExecutor

I've added this in 30e27d8

would it possible to use better forms for connection details instead of free form JSON?

The sqlalchemy template is supported, I just opted to use free form JSON in the example for screenshot purposes as the connection URL was cut off pretty quickly since it's long. e.g. redshift+redshift_connector://oktauser:oktapassword@:/dev?region=us-east-2&credentials_provider=OktaCredentialsProvider&idp_host=oktahost&app_id=myappid&preferred_role=arn:aws:iam::01223456789012:role/MyRole&db_user=awsuser&cluster_identifier=redshift-cluster-1 additionally, passing iam true to connect_args as JSON.

would it be possible to get % progress for redshift?

AFAIK this is not possible at this time.

Sounds good, one last note: can you add this to all_executors.py?

@czgu, I think I did so here in 30e27d8 -- or is there an additional change I need to make to all_executors.py?

oh no, that's all, sorry i missed it

@Brooke-white sorry actually 1 more change, can you remove redshift from lib/query_executor/executors/sqlalchemy.py?
we no long need a generic one give there is a custom redshift now

can you remove redshift from lib/query_executor/executors/sqlalchemy.py

sure @czgu, done in c09aff1 :)

merged, thanks for adding redshift!


feat(react): add package for framework integration

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

17 of 17 (100.0%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.04%) to 98.955%

Totals

Change from base Build<PHONE_NUMBER>:
0.04%

Covered Lines:
480

Relevant Lines:
480

💛  - Coveralls


type_debug: Remove type_debug.

This module was originally introduced in 2016 to assist adding mypy
annotations to the project. Back then static type checking was not that
established throughout the codebase, so it was helpful to be able to
print out the types for type checking purposes.
This workflow is no longer helpful for improving type annotations right
now, and it has been unused for a while.
Self-review checklist

[ ] Self-reviewed the changes for clarity and maintainability
(variable names, code reuse, readability, etc.).

Communicate decisions, questions, and potential concerns.

[ ] Explains differences from previous plans (e.g., issue description).
[ ] Highlights technical choices and bugs encountered.
[ ] Calls out remaining decisions and concerns.
[ ] Automated tests verify logic where appropriate.

Individual commits are ready for review (see commit discipline).

[ ] Each commit is a coherent idea.
[ ] Commit message(s) explain reasoning and motivation for changes.

Completed manual review and testing of the following:

[ ] Visual appearance of the changes.
[ ] Responsiveness and internationalization.
[ ] Strings and tooltips.
[ ] End-to-end functionality of buttons, interactions and flows.
[ ] Corner cases, error conditions, and easily imagined bugs.

There’s some associated documentation in docs/testing/mypy.md to delete too.

Fixed.

Merged, thanks for noticing this could be deleted!


Upgrade hail function for gnomad vrs api for 'cohort' name changes

Change population... to cohort... in all field names and modify the focusAllele values to be "#/focusAllele".
Create a pull request for the gnomad team since they are unable to get to this in the near term. We hope they will be able to merge this PR.
This should ungate the testing task since Kyle can reference the PR before or after it is merged.

Completed in https://github.com/broadinstitute/gnomad_methods/pull/559


Handle boxscore feed with no season-content node.

I think his happens when a competition first begins, the feed becomes available but has no data.

Fixed in 1d50c2c


I am using Panzoom with an  tag.

i want to use panzoom with object element.
But when I implement this panzoom with object, the object is sticky it not be move by click what can i do for it. Please guide me on that(I used jquery2.1.1)

Same problem here

See http://codepen.io/timmywil/pen/qNpykA


Change menu_labels_position programmatically

To supporting right to left languages I need to change FloatingActionMenu position programmatically but mLabelsPosition isn't public
Thank you so much for providing this library ;)

+1
Easiest modification would be to a do what hanihashemi suggested. But it would be best if you change attribute values for menu_labels_position to "start" and "end".

Same as #115

it would be best if you change attribute values for menu_labels_position to "start" and "end".

@Clans

fixed here
#115


Installation of influxdb failed on Ubuntu 20.04.2 LTS missing permissions on influxd-systemd-start.sh

Hi Michael, today I tried your Ansible playbook and the influxdb install task, more precisely the Influxdb package for Ubuntu, creates the shellscript /usr/lib/influxdb/scripts/influxd-systemd-start.sh that is executed on influxdb startup. But it lacks of the execution permission flag. My workaround was to correct the permissions in tasks/install_04_influxdb.yml before flush_handlers:
- name: InfluxDB | Workaround for Startscript
  file: dest=/usr/lib/influxdb/scripts/influxd-systemd-start.sh mode=a+x
  ignore_errors: yes

Afterwards I found the upstream bug report: https://community.influxdata.com/t/influxdb-1-8-7-will-not-start/20965
One additional thing:
As soon as I fixed this step, I run into the next problem with the missing user for the mod-gearman-module and I found your out-commended code. With this enabled, everything runs through.

Fixed in commit 295a3f0


MatlabStan version number in downloaded files

This is actually just a simple request 😄  I was wondering whether it would be possible to include the version number of the release of MatlabStan in the downloaded files somewhere.
When I run models, I like to record the versions of cmdstan, matlabstan, and matlabprocessmanager that were used for the models. I have code that pulls the information programmatically for cmdstan and matlabprocessmanager, but I wasn't able to find the release version in any of the downloaded files for MatlabStan. Right now, I pull it from the folder name of the directory that contains the code, but my collaborators don't always include that information in the folder name.
Of course, not a big deal if you don't like the idea. I figured it wouldn't hurt to ask though. Thanks!

This is possible. I could for example include a VERSION file in the base directory that indicates the release version. However, depending on how one downloads the code, this may not point to the snapshot used since I don't update the release version for each commit.
I'll push this in once you let me know this solution works for you.

That would work great. Thanks!


Incorrect zone for client on forseti_client_installer.py

version = 2.14.0
module: installer (via gcp_installer.py)
The forseti_client_installer.py is not obtaining the Client Instance Zone properly.
        if success:
            instance_name = 'forseti-{}-vm-{}'.format(
                self.config.installation_type,
                self.config.identifier)
            zone = '{}-c'.format(self.config.bucket_location)  # <== THIS!! Line 70
            gcloud.enable_os_login(instance_name, zone)
            # Create firewall rules.
            self.create_firewall_rules()
            self.wait_until_vm_initialized(instance_name)
        return success, deployment_name

That means it will get the bucket region name and append a -c to get the zone name - this is totally misleading (also, there are other zones besides "c").
it generates the following logs when you are not using the default:
+-------------------------------------------------------------------------------
|  Backing Up Important Files To GCS
+-------------------------------------------------------------------------------

Copying the Forseti client configuration file to:
        gs://forseti-client-ae2e185/configs/forseti_conf_client.yaml
Copying the Forseti client deployment template to:
        gs://forseti-client-ae2e185/deployment_templates/
Command "gcloud compute instances add-metadata forseti-client-vm-ae2e185 --metadata enable-oslogin=TRUE --zone us-central1-c" failed/timeout, retrying...
Command "gcloud compute instances add-metadata forseti-client-vm-ae2e185 --metadata enable-oslogin=TRUE --zone us-central1-c" failed/timeout, retrying...
Command "gcloud compute instances add-metadata forseti-client-vm-ae2e185 --metadata enable-oslogin=TRUE --zone us-central1-c" failed/timeout, retrying...
Command "gcloud compute instances add-metadata forseti-client-vm-ae2e185 --metadata enable-oslogin=TRUE --zone us-central1-c" failed/timeout, retrying...
Command "gcloud compute instances add-metadata forseti-client-vm-ae2e185 --metadata enable-oslogin=TRUE --zone us-central1-c" failed/timeout, retrying...
ERROR: (gcloud.compute.instances.add-metadata) Could not fetch resource:
 - The resource 'projects/forseti-238321/zones/us-central1-c/instances/forseti-client-vm-ae2e185' was not found

Locally I have modified line 70 to read as follows:
zone = self.server_zone

From what I saw in the code it looks like "server" here is referring to instance and not the forseti server vm. If someone can confirm my understanding I can submit a PR with the change.

Hi @fawix, sorry to get back to you so late on this issue. Forseti now supports installation through Terraform and many of these types of options are now available for you to customize, including the client zone. Please let me know if you have any questions or if we can close this out.

@fawix we have not heard back from you in 2 weeks, and this is an old issue. Closing the issue for now. Please reopen and if this is still valid and you need assistance.
Thanks!


Example of how to write on NTAG213, if possible

Hi,
I'm learning about the mfrc522 and I have a project that can use it with Ntag213, but it would work better if I can write on the tags.
I'm not sure mfrc522 can do this, if it don't could you just comment saying it is not possible? But if it can could you please provide a example of how to write to a NTAG213?
I've spent the last few hours trying to make it work but no success, no Google search that helped.
Thanks.

thanks @musdom

closing the issue, and linking this in the readme as example for NTAG213


Consider allowing empty changeset

Is there any reason that Diesel returns an error when trying to apply an empty changeset?
Example:
#[derive(AsChangeset, Clone, Debug, Default, Eq, Hash, PartialEq)]
#[table_name = "users"]
pub struct ChangeUser<'a> {
    pub address: Option<&'a str>,
    pub name: Option<&'a str>,
}

// This errors because there are no changes to execute
diesel::update(users::table.find(1)).set(&ChangeUser::default()).execute(&connection).unwrap();

Would it make sense to just return Ok(0) in this case?

Is there any reason that Diesel returns an error when trying to apply an empty changeset?

Because there's no obviously correct thing to do here. We could generate some valid SQL that does nothing (e.g. SET id = table.id), but that would cause triggers to fire which may not be expected. Ok(0) isn't clearly the correct thing to do either, since that number is how many rows were matched, regardless of if the changes requested actually affected anything.
Even if we wanted to return Ok(0) here, doing so would be rather challenging since the place this error is generated has to return Result<(), Box<std::error::Error>>, so handling this at the connection level would be extremely difficult.
The current behavior was introduced in https://github.com/diesel-rs/diesel/commit/579c6934 if you're interested in a little more context.

Okay, thank you for the thorough explanation!


Add GET/POST/DELETE Record on demand API

Describe the feature
First off - fantastic work @aler9 and all contributing developers . This is a really wonderpiece of a media-stack 👏
I see that the record to disk on apparently all active streams are the only way to activate recording, and is great for surveillance.
However we have a bit different need:

Is there any manual start/stop recording feature in the pipeline currently?

Its important that it don't interfere with the global settings ofc.
I'm thinking of extending the current Recordings API with a POST and PUT

POST http://localhost:9997/v3/recordings/{name}/start - Start recording by path-name
Response: Some recording-session-id

PUT http://localhost:9997/v3/recordings/{name}/stop/{session-id} - End recording segment by path-name
Response: Ok/bool?

Needed configs for mediamtx.yml
# This is the max time if /start is triggered but not /stop
recordTriggeredMaxDuration: 1h

If this is currently not in progress, could anyone direct me to where the triggering of recording is being done in the code, so I maybe have time create a PR in the future? 🙏

Isn't this already possible by changing the single path configuration, setting record to true / false?

Isn't this already possible by changing the single path configuration, setting record to true / false?

I was just going to test/suggest this myself 🙃 i use runOnDemand param with a gstreamer pipeline attached.
Should the runOnDemandRestart param be set to yes/no if this record changes?

This is fantastic :sweat


Update column-formatting.md

updated first conditional example so that JSON matches image, and updated conditional operator definition

Q
A

content fix?
yes

New article?
no

Related issues?
no

What's in this Pull Request?
Updated the first conditional example so that the JSON and description match the image.  Updated operators section at the end to reflect ? as the preferred ternary conditional operator

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/declarative-customization/column-formatting.md
:white_check_mark:Succeeded

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


Parameter Highlight (Feature request)

Usually, for the macro which is outside the current sheet it would be helpful if the parameters are highlighted just below the function. As in most cases parameters are self-explanatory which will make the macro more usable/readable.
Also, macro autocomplete feature are not showing on case with environment variables.

Hi! Thank you for your suggestion. This will be extremely helpful and also for all these new vector and matrix functions. Even I often forget what to write. We can also allow for a custom description of macros and parameters above the definition as in other languages, that will also appear:
'/macro_description/
#def my_macro$()...

thank you. with the increasing vector or matrix functions, it will also be helpful if we can quick search it through the function name somewhere under help>Find functions in the future.


Update semanticdb-scalac to 4.8.11

About this PR
📦 Updates org.scalameta:semanticdb-scalac from 4.8.10 to 4.8.11
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scalameta", artifactId = "semanticdb-scalac" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "org.scalameta", artifactId = "semanticdb-scalac" }
}]

labels: library-update, early-semver-patch, semver-spec-patch, version-scheme:semver-spec, commit-count:1

Codecov Report
All modified lines are covered by tests :white_check_mark:

Comparison is base (9933ca8) 85.61% compared to head (bfe147f) 85.61%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##           master     #795   +/-   ##
=======================================
  Coverage   85.61%   85.61%
=======================================
  Files         141      141
  Lines        1529     1529
  Branches      258      258
=======================================
  Hits         1309     1309
  Misses        220      220

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


using popen3's own escaping instead of Shellwords for the filenames

As discussed in Issue #1, I replaced the shellword-escaping with Popen3's (well, actually Kernel.spawn's) automatic escaping. This includes passing tests.

This solution became obsolete by commit 416942cc6275f978d9574a0d6a62a2281def3810, which solved the same problem and an encoding problem along the way.


define_property override is still needed

Due to the recent removal of the experimental property command (which wasn't even implemented), we are still in need of a custom define_property to

Keep track of defined properties (for the target_copy_properties command)
Make defining properties much easier
Allowing us to write some documentation in the source code before it is added to the documentation repository.

I'm iffy on whether this should still go into IXM. On the one hand we can keep track of custom properties. On the other hand we end up with scripts that just call define_property and that's time wasted when running the configure stage. :/

Closing, as this project has burned me out, and I cannot continue working on it in its current state. CMake has changed massively since this project was started. Most of it is no longer necessary. A new repository will be launched in September.


Non working ldif examples

Describe the bug
After a bit of debugging, the default ldif files don't seem to provide with a working out of the box experience for a properly configured ldap server. When running openldap with the default files, the following error occurs:
additional info: invalid structural object class chain (groupOfUniqueNames/posixGroup)
having a look at the groups, the issue seems to be originated in the group entries:
dn: ou=groups,dc=owncloud,dc=com
objectClass: organizationalUnit
ou: groups

dn: cn=users,ou=groups,dc=owncloud,dc=com
objectClass: groupOfUniqueNames
objectClass: posixGroup
objectClass: ownCloud
cn: users
description: Users
gidNumber: 30000
ownCloudUUID:: NTA5YTlkY2QtYmIzNy00ZjRmLWEwMWEtMTlkY2EyN2Q5Y2Zh
uniqueMember: uid=einstein,ou=users,dc=owncloud,dc=com
uniqueMember: uid=marie,ou=users,dc=owncloud,dc=com
uniqueMember: uid=richard,ou=users,dc=owncloud,dc=com

For some reason I have not yet discovered, having posixGroup as a child of groupOfUniqueNames is not possible. Now, getting rid of posixGroup
Steps to reproduce
Steps to reproduce the behavior:

download all the ldif files in this repository and place them on your filesystem, then mount them as a volume for the openldap docker image.
setup an openldap server.

docker run \
        --volume /path/to/openldap/ldif/files/dir:/container/service/slapd/assets/config/bootstrap/ldif/custom \
        -p 389:389 \
        -p 636:636 \
        -e LDAP_DOMAIN="owncloud.com" \
        -e LDAP_TLS_VERIFY_CLIENT=never \
        -e LDAP_ORGANISATION=ownCloud \
        -e LDAP_ADMIN_PASSWORD=admin  \
        osixia/openldap:1.5.0 --loglevel=debug --copy-service

Expected behavior
openldap running with such files
Actual behavior
Error occurs:
61c1b746 conn=1017 fd=12 closed
***  DEBUG  | 2021-12-21 11:15:18 | ldap_add: Object class violation (65)
        additional info: invalid structural object class chain (groupOfUniqueNames/posixGroup)
adding new entry "ou=groups,dc=owncloud,dc=com"

some people replace using a schema such as rfc2307bis.schema
source

Are you referring to these files https://github.com/owncloud/ocis/tree/master/deployments/examples/ocis_ldap/config/ldap/ldif ?

For some reason I have not yet discovered, having posixGroup as a child of groupOfUniqueNames is not possible. Now, getting rid of posixGroup

It's because of a design flaw in the RFC2307 Schema :-(. The LDAP Standard only allows a single entry to have a single "structrual Objectclass" (and multiple auxilliary Classes). Unfortunately in RFC2307 posixGroup was defined as structual and groupOfUniqueNames is structural as well (many LDAP servers just don't implement this restriction. OpenLDAP does however). A possible workaround, as you already found out. is to use the revised (but never formally standardized) RFC2307bis Schema.
If you're using the osixia/openldap container it should be possible to do that via the LDAP_RFC2307BIS_SCHEMA env variable to true


[BUG] JSQLParser 4.9 : Invalid serializing of ExpressionList

Failing Feature:
We have recently migrated from v2.1 to v4.9 and we found an issue where you adjust the query with ExpressionList.
In v2.1 ExpressionList was converted into string with brackets, e.g. IN ('value1', 'value2')

But in 4.9 ExpressionList implementation class has changed and it doesn't add the brackets.
This results in IN 'value1', 'value2' which is invalid query syntax

Java Code Example:
Select selectQuery = (Select) CCJSqlParserUtil.parse(cql);
PlainSelect plainSelect = (PlainSelect) selectQuery.getSelectBody();
Expression where = plainSelect.getWhere();

String colName = plainSelect.getSelectItems().get(0).getExpression().toString();

InExpression in = new InExpression();
in.setLeftExpression(new Column(colName));
List<Expression> list = new ArrayList<>();
for (String key : keys) {
	list.add(new StringValue(key.replace("'", "''")));
}
in.setRightExpression(new ExpressionList<>(list));
if (where == null) {
	where = in;
} else {
	where = new AndExpression(where, in);
}

plainSelect.setWhere(where);

cql = plainSelect.toString();

Output from 2.1:
SELECT country FROM world_bank_doc WHERE  country IN ('m', 'Tanzania') GROUP BY 1

Output from 4.9:
SELECT country FROM world_bank_doc WHERE  country IN 'm', 'Tanzania' GROUP BY 1

Software Information:

JSqlParser version 4.9

Greettings.
ParenthesedExpressionList is your friend:
SQL Text
 └─Statements: statement.select.PlainSelect
    ├─selectItems: statement.select.SelectItem
    │  └─Column: country
    ├─Table: world_bank_doc
    ├─where: expression.operators.relational.InExpression
    │  ├─Column: country
    │  └─ParenthesedExpressionList: ('m', 'Tanzania')
    └─groupBy: statement.select.GroupByElement
       └─ExpressionList: 1

You can get this AST for your example from here.
Furthermore, Migration Guide is here.

Ah, thank you for the quick answer, that solves the issue!

You are most welcome. I would like to advise to use the online tool for illustrating the AST for any sample SQL. From there you can use the Java API for looking up Pojos and properties.
Any further questions or concerns, please just ask.


Segmentation fault (core dumped)

Describe the bug
When: ./target/debug/mail
Received: "Segmentation fault (core dumped)". And no other output.
To Reproduce
fn main() {
    let email = Email {
        to: "xiaohong@126.com".to_string(),
        title: "The Title".to_string(),
        body: "Hi, xiao hong, nice to meet you !".to_string(),
    };
    let _ = send(&email);
    ()
}

use lettre::{Message, SmtpTransport, Transport};

pub struct Email {
    pub to: String,
    pub title: String,
    pub body: String,
}

pub fn send(email: &Email) -> Result<(), String> {
    let email = Message::builder()
        .from("XiaoMing <xiaoming@126.com>".parse().unwrap())  // 发件人
        .to(email.to.as_str().parse().unwrap())  // 收件人
        .subject(email.title.as_str())  // 主题
        .body(email.body.to_string())          // 邮件内容
        .unwrap();
    match mailer().send(&email) {
        Ok(_) => Ok(()),
        Err(e) => {
            Err(format!("Email send failure: {}", e))
        }
    }
}

/**
 * 创建 mailer 对象
 */
fn mailer() -> SmtpTransport {
    use lettre::transport::smtp::authentication::Credentials;

    // 邮件服务器账号：
    // username 需包含 @xxx.com 等后缀
    // password 邮箱 -> 设置，开启 smtp -> 得到 授权密码
    let creds = Credentials::new("xiaoming@126.com".to_string(), "123456798".to_string());

    // Open a remote connection to gmail
    SmtpTransport::relay("smtp.126.com").unwrap().credentials(creds).build()
}

Expected behavior
A clear and concise description of what you expected to happen.
Environment (please complete the following information):

Lettre 0.10.0-rc.4
Scratch / Alpine-3.14
Rust：1.57、1.58

Additional context
Add any other context about the problem here.

I don't think this is coming from lettre, as we don't have any use of unsafe.
Does it also happen with other providers? even if you don't have the credentials you can at least test if it goes through the connection phase successfully
Are all of your dependencies up to date? try running cargo update
Have you tried using rustls instead of openssl? you can do so by importing lettre with lettre = { version = "0.10.0-rc.4", default-features = false, features = ["smtp-transport", "pool", "rustls-tls", "hostname", "builder"] }

Very thanks for your reply, by using lettre = { version = "0.10.0-rc.4", default-features = false, features = ["smtp-transport", "pool", "rustls-tls", "hostname", "builder"] } dependency, the problem is solved.
I'm a newbie and don't yet understand how it works, thank you again ！


Server Failure when input Correct Password for Client when hit Upload Document

Made a new client, Gríma, who has decided to reform and take the black. I made the password, or rather he did, "tongues0fFire" (0 being the number) so I did not forget when I selected Upload Document. It still gives me the Server Failure, which either means as an admin I do not have permission to even upload documents for him (which shouldn't be a thing), or it is a server failure.

The same occurs for when I select View Documents, Send Email, and Send Application.


Add CScript cache for isminetype values

Description
This PR adds a cache to keep the value of the isminetype value for each CScript, used one every tx output (CTxOut).
There are several places where IsMine() is called to determine the "solvability" and "spendability" of an address, and each of those times that value is computed, according to the keys stored on our wallet.
Since this value doesn't change that much (except when we import a new address or a key regarding an already imported address), we can keep those values cached for faster lookups.
Some of the rpc calls greatly affected by this overhead are listunspent, fundrawtransaction, sendtoaddress, because of the work that is being done by their internal call CWallet::AvailableCoins(...).
This changes should improve CWallet::AvailableCoins(...) performance up to 70%, depending on the wallet's size.
Supercedes #9.
Steps to reproduce or test
Run tests or use affected rpc calls: listunspent, fundrawtransaction, sendtoaddress, ...
Impacted areas
If necessary, list general components of the application that this PR will affect.
Checklist

[x] Commits are atomic and logically separated.
[x] Performance implications have been considered.
[x] Security implications have been considered.
[x] Local tests run successfully and the new code has good coverage.

What's the memory increase with this change and 1M addresses?

It think should take at least 40 bytes per script. For a wallet with 1M addresses, it should require at least 38 MB of extra memory space.

@promag @pedrobranco WDYGT of this?


Port Aliases not correctly sanitized/validated when pasting

Describe the bug
When pasting lists of ports into a Port alias the input is not correctly validated.
To Reproduce

Create Port alias
Paste following input: 20, 21, 22, 23
alias is created with ports [20] [ 21] [ 22] [ 23]
Use alias in Firewall rule
only port 20 is in the rule, because there is an space in front of every following port

The issue does not happen when manually adding the ports becuase there a space creates a new entry.
Expected behavior
Spaces and other invalid characters are either removed or throw an error when creating the alias
Environment
OPNsense 19.1.7 (amd64, OpenSSL).
Chrome or Firefox

duplicate https://github.com/opnsense/core/issues/3458


SFC is not compatible with its dependencie (cloth config api 8.0.75)

as said SFC is not compatible with CCA 8.0.75 which it needs to work please fix it

It looks like modrinth's dependency resolution needs some work. I changed it manually to a fixed version (7.0.74), but any 7.x version will work for now.
I'll run some tests, I may be able to relax the dependency to >= 7.x, then 8.x versions should work as well.

v1.3.1 is up. working with cloth-config 7 (on 1.19) or 8 (on 1.19, 1.19.1 or 1.19.2)


Improve error messages when reference resolution fails

To improve the error messages for reference resolution failure, we add a Vec<String> to track the current parameter key for which we're resolving references into the ResolveState struct.
We also extract the error rendering in Token::resolve() into methods on ResolveState, since we mostly need data from ResolveState to render the error messages.
The new error messages all print the parameter key for which we're resolving references. If applicable, the error messages also contain the full reference, and the particular key for which resolution failed.
To reduce repetition for the error handling, we also refactor Token::resolve() to always either interpolate or copy the Value which is the base for the key lookup. While this introduces a bunch of unnecessary calls to clone() if we're not doing a lookup into a Value::String or Value::ValueList, the performance impact is negligible, and the resulting code is much less convoluted.
Resolves #69

Checklist

[x] The PR has a meaningful title. The title will be used to auto generate the changelog
[x] PR contains a single logical change (to build a better changelog).
[x] Update the documentation.
[x] Update tests.
[x] Categorize the PR by setting a good title and adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency, internal
as they show up in the changelog
[x] Link this PR to related PRs or issues.

Note that the additional state tracking has a mild performance impact (the benchmarks in #47 report a performance regression of 2-4%)

Follow-up regarding performance: I tested a bit more and have found that pre-allocating the variable-sized ResolveState fields (seen_paths: HashSet::with_capacity() and current_keys: Vec::with_capacity()) doesn't seem to make a significant difference in runtime.


Consume existing AAD app for domain isolated webparts

We have tight control over creation of AAD apps in our tenant. Governance wise it would be nice to be able to consume existing AAD apps for domain isolated webparts. This will also remove one to one relationship with AAD apps and sppkg containing domain isolated webparts. Sometimes it is wise to create multiple packages for different webparts. Best would be to give this control to admins.

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

ID: 364300d9-535e-e105-6c95-8becd00a396c
Version Independent ID: 31b7e9d2-3c6f-953c-3d18-607d29d3151e
Content: Isolated web parts
Content Source: docs/spfx/web-parts/isolated-web-parts.md
Product: sharepoint
Technology: sharepoint-framework
GitHub Login: @VesaJuvonen
Microsoft Alias: vesaj

This is the whole purpose of domain isolated web parts... Domain Isolated web parts are intended to isolate the app permissions per web part for increased security. Otherwise, if someone were to make a change to permissions of the registered app, those now would be applicable to all those custom web parts in your environment... which is the security problem.
The behavior you want is the default behavior for SPFx web parts... so just don't use domain isolated web parts. When you approve an API request from a web part that uses the AadHttpClient, the permissions get added to a single registered application called "SharePoint Online Client Extensibilty Web Application Principal".

Thank you so much for quick response @bcameron1231! I perfectly understand what Domain Isolated Webpart is. Apologies for not being clear enough.
My first point is, rather than creating AAD app dynamically, can I not use existing AAD app instead of my choice?
Default behavior uses single aad app for everything. That is absolute no go for me. My point here is, if I get control over selection of aad app while deploying domain isolated webpart, then I can provision multiple aad apps and cautiously/carefully provide permissions to them differently. Spinning up separate AAD app for each domain isolated webpart is just too much in my opinion. As an admin, if I am deploying new domain isolated webpart and have a pre-existing aad app with requested permissions, then I might prefer to use the same rather than provisioning new aad app if it suits my governance/ maintenance need. I just want to efficiently use my existing aad apps for domain isolated webparts.
Can I change which AAD app domain isolated webpart is using by some workaround post deployment?

At this time that's not an option with domain isolated web parts. However, this could be a good feature to request via user voice.


Edit command removes file attributes

After using beak edit and the final progress of copying the file back, the file attributes are lost. This is a little disturbing if you want to use the Shebang way to run your script, because you always need to execute the chmod again.

@yonaskolb Any plans on fixing this (or any other Beak issue) currently? This project looks like it's not being maintained anymore ... I'd be glad to help if you don't have the time. Just make me a maintainer and I'll try to update the project as responsibly as I can.


ci: add adams85 from ConfigCat as component owner

This PR

Adds @adams85 (ConfigCat) to the component owner's list of the ConfigCat providers. The intention behind this is that we (ConfigCat) would like to mark the providers in this repo as the official OpenFeature JS providers for ConfigCat, and we would like to participate in their development and maintenance.

Notes
I noticed that the config-cat-web provider wasn't on the list, so I added it. Please let me know if there was a specific reason not to list it, and I'll remove it from this PR.

@adams85 great to hear that!
I opened a PR to add you to the org, this would make sense before we merge this.
Please have a look: https://github.com/open-feature/community/pull/390


Id and shutdown

Implements https://github.com/n0-computer/iroh/issues/806
What about events? Should we expose those as well?

https://github.com/n0-computer/iroh/issues/827 to be done in a subsequent PR


Fix up a few filesAnalyzed issues

Looks like circleci stuff on mac is broken. I'm not quite sure how to fix it.

And sorry if I did update you branch by mistake with the latest.

Yes, of course. I'll add some tests.

@lhh Thank you! you rock.

Should package_object["packageVerificationCode"] = self.package_verification_code( be optional or 'mandatory missing' per spec version 2.2 https://spdx.github.io/spdx-spec/package-information/#79-package-verification-code-field

Should package_object["packageVerificationCode"] = self.package_verification_code( be optional or 'mandatory missing' per spec version 2.2 https://spdx.github.io/spdx-spec/package-information/#79-package-verification-code-field

@dholth this code is a source of troubles more often than not. We should make it optional in this library IMHO.

@lhh, do you still plan on updating this PR?

Ah, yes - my apologies. I'll address the above issues shortly.


High-level API for proving, refining, recognising lemmas etc

Instead of calling methods directly or having a web-interface, we should have a Domain Specific Language for all the steps.
The kernel of this can be configurable, perhaps with type-classes for the capabilities we want.
The language should grow and include lean imports and NLP eventually.

The DSL should allow easy calling.

Have a collection of parameters so everything has defaults, including e.g. weights of axioms.
This should be usable sync and async, in REPLs, worksheets, batch mode and with web interface.
Hooks to handle output of all tasks, with configuration involving whether to run on creation.
For file saving (and even notebooks), note the git hash of the code

Learning Interface.

All tasks memoized so we can run with callbacks without rerunning.
[ ] Create TermState in various settings:

[ ] from a distribution, or just list, of terms, by defaults for types (intersection or map)
[ ] from constant terms and types (weighted or uniform), axioms and goals.

[ ] Evolve by cutoff and get a new term state and evolved state.
[ ] Get the equations, expressions etc from the initial and final state.
[ ] Extract lemmas and tune them.
[ ] Evolve using tangents, including automatically with generated lemmas.
[ ] Optimize initial distribution.
[ ] Optimize term generation against a given list of terms (pattern match), and similarly with types.
Efficiently form one or more new states for iteration.

[ ] Mix in discovered lemmas, goals etc.
[ ] Generate goals by backward reasoning.

Lean Interface

[ ] Return a list of all files.
[ ] For a file, written list of objects defined.
[ ] Return a list of generate code.
[ ] Generate and save code (configurable ).

NLP

[ ] Do the parsing as in the web interface.

More is done as we develop NLP.

What we need is an API rather than a DSL. In practice this means cleaning, streamlining and extensions are needed, rather than anything new from scratch.

Features needed

[ ] Independent of whether we use spire, tensorflow or some other way to optimize.
[ ] Even hide away the use of monix, with only the interface visible.

In 07002065a3eca9ab a Prover object was created encapsulating many of the methods - as of now this is untested and has no helpers for creation and configuration.

Convenience methods added in f3ebe010743b716cc2f99fdba

Hooks for solvers and targeting negated types added in 8eb809b26
Experiments are really attempts to prove negation, so need no for a special rule.

The distribution on types depends mainly on the initial distribution of terms.
We can match distributions using the equality type to generate goals, and providing terms such as reflexivity that prove equalities.

For backward reasoning:

Add nodes generating just functions with given codomain, including by induction.
From types, fill in those already discovered.
Partially filled functions give goals.

Minor convenience methods added in Lean and NLP cases. Can meaningfully address these only when we use them in REPL/Notebook sessions. Main case is addressed by Prover


Add to favourites

Make add to favorites feature. ✅
Use local browser storage. ✅
Real time refresh favorites page.  🆘 help wanted

I'll have a look at the favourite pokemon functionality to see if we can get them populated without the need of refreshing.

@aihowes sure 👍  take your time


⚠ Cioos National CKAN Sitemap has degraded performance

In 5f610dd, Cioos National CKAN Sitemap (https://catalogue.cioos.ca/sitemap/sitemap-1.xml) experienced degraded performance:

HTTP code: 200
Response time: 17459 ms

Resolved: Cioos National CKAN Sitemap performance has improved in 170d409 after 6 minutes.


feat: move mev.rs from reth to rpc-types-mev

Ref https://github.com/paradigmxyz/reth/issues/9027

yeah, it's reasonable, I tried to split it by endpoint but it seems to be a bit much at the end.


Porting for FUZIX.

FUZIX. Micro System Operating System.
https://github.com/EtchedPixels/FUZIX
...but Porting Now?
SDCC is ANSI C Support.
FUZIX users will be delighted as well.

Hi,
I'd like to help MY-BASIC running on more platforms. FUZIX looks nice. But I'm sorry I don't have enough time to learn details about this OS and toolchain for the moment. MY-BASIC can be compiled with various popular compilers now. Any compile issue report is appreciated. Maybe I'll take a try on FUZIX someday.

I've tried to compile MY-BASIC with SDCC, but it appears that SDCC is implemented following an ancient way: without allowing struct passed to and from functions. It's up to compiler vendors about whether a caller or callee is in charge of storing, pushing, popping the memory of struct parameter and return value; furthermore, there might be issues using more than one compiler to compile and link one program with struct passing. But it should be supported as a part of the standard anyway. I don't see the sense of not supporting it if SDCC is not supposed to link with libs generated by other compilers.
It would change a lot of current implementation and interface; but it's not wise to make changes to C API now, for just supporting a not widely used compiler. Anyway, I'll consider adding some passing by pointer only API in the v2.0. So this won't be fixed for the moment.


Key storage

Implements key storage/persistence. I put the keys into a separate table for security reasons: it is easier to get code wrong that distinguishes between "secret" data for the main table and "shared" data for it. Open to suggestions for the key table's design. I also made it so that it can be changed to use RSA in the future, if needed.

https://github.com/sifis-home/libp2p-rust-dht/pull/1


unable to resolve module 'react-native-tab-view '

Hi ,
I am getting unable to resolve module when i am importing it .Module doesn't exist in module map ... bla bla,
I checked package.json it is already there , "react-native-tab-view": "^1.0.2",

Check node_modules directory and see if it's already there or not ?

Hey, I just released a new alpha 2.0.0-alpha.0 of the library. It's rewritten using react-native-gesture-handler and react-native-reanimated addresses a many platform specific bugs and performance problems. The documentation is updated as well.
Please try the new version and see if it addresses your issue. If not, please open a new issue following the issue template.


Adding WAF pillar to AVD checklist

Adding WAF pillar categorisation to AVD checklist content.

@igorpag and @mikewarr if it is OK with you I will merge this?

Hi @erjosito, need to check a thing by EOD, will update you once done. OK?

#sign-off

@erjosito approved and merged. Thank you.


Mac Catalina 10.15.1 installation extra steps and machine-id missing?

Installing on MacOS Catalina (10.15.1) had some extra steps:

% brew install gobject-introspection
% brew install libffi
% brew install mpv
% PKG_CONFIG_PATH=/usr/local/opt/libffi/lib/pkgconfig pip3 install tuijam

Then I'm running into the following failure after doing OAuth:

starting up.
logging in.
enabling external control.
Traceback (most recent call last):
File "/Users/von/.virtualenvs/tuijam/bin/tuijam", line 8, in
sys.exit(main())
File "/Users/von/.virtualenvs/tuijam/lib/python3.7/site-packages/tuijam/app.py", line 605, in main
app.mpris = setup_mpris(app)
File "/Users/von/.virtualenvs/tuijam/lib/python3.7/site-packages/tuijam/mpris.py", line 230, in setup_mpris
bus = SessionBus()
File "/Users/von/.virtualenvs/tuijam/lib/python3.7/site-packages/pydbus/bus.py", line 60, in SessionBus
return bus_get(Bus.Type.SESSION)
File "/Users/von/.virtualenvs/tuijam/lib/python3.7/site-packages/pydbus/bus.py", line 19, in bus_get
return Gio.bus_get_sync(type, None).pydbus
gi.repository.GLib.Error: g-file-error-quark: Cannot spawn a message bus without a machine-id: Unable to load /usr/local/var/lib/dbus/machine-id or /etc/machine-id: Failed to open file “/usr/local/var/lib/dbus/machine-id”: No such file or directory (4)

Hi @von, Thanks for reporting this. TUIJam uses dbus to implement some of the MPRIS spec for external control via command-line clients or UI integration.  This apparently requires a machine-id file to be present at either /etc/machine-id or /usr/local/var/lib/dbus/machine-id. According to here, systemd is responsible for creating this file either during installation or boot. However, OSX doesn't use systemd so the file doesn't get created.
You could try creating it manually (you can see the spec for it at the previous link), but I think a better solution is to just not rely on dbus on OSX. Instead, we should either have no external control or use whatever system OSX typically uses.
For now, I'll just edit the exception handling so that this failure doesn't crash the app.
Also: If this fixes the problem and you get TUIJam working on OSX, can you provide a short installation guide that I can include in the README (similar to what you've written already, but with the app verified working)?

Ok, try installing 0.6.3 and see if you still encounter the issue.

@von, did the update fix your issue? Unless I hear otherwise I'll assume it did and close the issue. If it didn't, feel free to re-open and I can look more closely.

@cfangmeier Yes, it works now. Sorry for the slow response.


abi: fix the conflict of PERFILE_DAX flag

The current upstream flag is defined as:
FUSE_INIT_EXT (1 << 30)
FUSE_HAS_INODE_DAX (1ULL << 33)
We should follow it.
Signed-off-by: Huang Jianan<EMAIL_ADDRESS>

It looks like clippy's error is from rust 1.67.0.
The command "make check" works fine in my own rust 1.66.1 environment.
Maybe I need to submit another PR to fix clippy's error first?

@mofishzz you can add another commit in this PR to address the clippy issues.

@mofishzz you can add another commit in this PR to address the clippy issues.

updated


Search output format 'searchpageresults' returns no results

For my geoportal 1.2.7 installation searching via the search site returns the following error:
No data recieved from server/geoportal/rest/find/document?rid=local&ridName=This%20Site&rids=local&start=1&max=10&orderBy=relevance&maxSearchTimeMilliSec=10000&f=searchpageresults
It appears that requests with the output format 'searchpageresults' do not return any results, whereas there is a proper response if I replace searchpageresults with atom, html or htmlfragment.
Searching via the main page works too, but browsing through the results returns the error mentioned above (as pagination uses searchpageresults).

not sure what cause "server" appearing in "server/geoportal/rest...", maybe try to replace "server" with the actual server name or see if the works, could be some network issue, can further look if there is an external url for the site.


Illegal hardware instruction

This occurs:
$ sudo howdy test
[1]    68221 illegal hardware instruction  sudo howdy test

I am unsure how to provide logs or similar for this issue. Please give me commands or files to upload that may help you!

I've searched for similar issues already, and my issue has not been reported yet.
Linux distribution (if applicable): Arch Linux rolling
Howdy version (sudo howdy version): 2.6.1

Seems like your dlib got compiled for the wrong cpu architecture, have you tried a reinstall?


Add autoscaling of images to mobile browsers

Currently, on mobile devices that are not wide enough for the images
in the blog, the image sets the max width of the blog and downscales
all the text relative to it, leading to crushed text and a large empty
space on the right side.
I've reproduced this using Google Chrome developer tools, setting the
device mode to emulate an iPhone X, but it appears to occur any time
the mobile device has a screen width smaller than the image
to be displayed.
The code change here hints that the max width of the image
should be 100% of the screen width, not an absolute number of pixels,
and the height will be automatically adjusted to maintain
the image aspect ratio.
Example images below, I created a test image that was >800 pixels across, added it to the index page, and displayed it (emulated) on a screen that was ~350 pixels across in portrait mode.
Pros:
Makes text reflow look a lot cleaner
top navigation bar subjectively "looks less broken on first glance"
Text remains full size and dominates the website on mobile devices
Cons:
Squishes images in whatever way the phone decides to squish them, resulting in a loss of legibility and fidelity.
Still results in full size images being sent to a phone for the phone to scale down (more bandwidth + compute required by phone)

And as an example in how I am using it on my own site:

P.S. Thanks for a wonderful, readable tool. It does exactly what it says on the tin, it is easy to read what the code is doing, and your tool was just the right balance of power and simplicity I wanted when dipping my toes into blogging. If you are interested in what I created with your excellent tool, my newly created blog is at: https://nortyspock.github.io/

Pull Request Test Coverage Report for Build 38

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 100.0%

Totals

Change from base Build 35:
0.0%

Covered Lines:
533

Relevant Lines:
533

💛  - Coveralls

Hi @NortySpock, Thank you for the fix and the detailed explanation. Your blog looks nice. I am glad you found makesite.py useful. 🙂

Hi @NortySpock, Thank you for the fix and the detailed explanation. Your blog looks nice. I am glad you found makesite.py useful. 🙂


Add user-agent

add user-agent header
message from apiary is print to output

$ ./bin/apiary publish --api-name=mynewapi1232112121 --path=./features/fixtures/apiary.apib
Apiary service responded with an error: Suite mynewapi1232112121 does not exist

@abtris This looks good to go now.

I'll merge and release after all tests passed.


fix(optimizer): fix lookup join and agg distribution derive

I hereby agree to the terms of the Singularity Data, Inc. Contributor License Agreement.
What's changed and what's your intention?
PLEASE DO NOT LEAVE THIS EMPTY !!!
Please explain IN DETAIL what the changes are in this PR and why they are needed:

Lack of considering output_indices for BatchLookupJoin.
Lack of considering UpstreamHashShard for BatchHashAgg, BatchSortAgg, StreamHashAgg.
This bug found by enabling batch lookup join by default. https://github.com/risingwavelabs/risingwave/pull/6818

Checklist

[x] I have written necessary rustdoc comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in ./risedev check (or alias, ./risedev c)

Documentation
If your pull request contains user-facing changes, please specify the types of the changes, and create a release note. Otherwise, please feel free to remove this section.
Types of user-facing changes
Please keep the types that apply to your changes, and remove those that do not apply.

Installation and deployment
Connector (sources & sinks)
SQL commands, functions, and operators
RisingWave cluster configuration changes
Other (please specify in the release note below)

Release note
Please create a release note for your changes. In the release note, focus on the impact on users, and mention the environment or conditions where the impact may occur.
Refer to a related PR or issue link (optional)

Will #6642 be caused by this? 🤔


Add watchfiles dev dependency

Change description
Add watchfiles dev dependency.
How to test
Use docker runner pr to test

Fix your computer, m8!


Falsify testcase

@rultor merge

@rultor merge

@avatar46 Sorry, I accept such requests only from authorized commanders: @zehaoj Your Github login should be added to the list of "commanders" in .rultor.yml, as explained here

@rultor merge

@avatar46 I'm sorry, I don't understand you :( Check this page and try again please


add type for Machine.current

See #7

I would also love to type the setter but am to unexperienced with dart to know how to do union types

Thank you for the fix, that was a nasty bug.
Unfortunately Dart doesn't support union types (yet). Only workaround I see is to have different accessors?


Feature request: Select application to share apk files between Android

It will be more convenient :)

Added in v1.8.0


Changed retrieve tweets and create link to hashtag

Need to change the author_handle to more than 15 character

Organization/models.py

Added organization_twitter_handle
Added create_or_update_organization_link_to_hashtag

Twitter/models.py added a general exception
Organization/controllers.py added a try and exception block to auth

👍


Deprecate the NotFoundActivationStrategy class

Use the version that is in monolog-bridge instead. That version uses
request_stack rather than request from the service container, which
means excluded_404s shall be properly ignored in Symfony 3.
Replaces #94, Fixes #166 and invalidates #123.
This change remains backwards compatible with Symfony 2.6 and above.

Tests are failing as this is incompatible with Symfony 2.3, which Travis is currently testing. Given that Symfony 2.3 enters its security-fixes-only LTS phase this month, I don't think the extra effort to maintain that compatibility is worthwhile as it is non-trivial (as documented in #94).

@Seldaek, any chance you could give this a review / provide any feedback?

I think we should just require symfony 2.7 and then I can merge this in the v3 of the bundle. 2.6 isn't LTS so it's kinda pointless.

I'm not familiar with Symfony's process for specifying dependancies between bundles of varying versions and how that interacts with maintenance periods. What parts of the composer.json should I update?
Currently the minimal version bumps for this code to work are:
"symfony/monolog-bridge": "~2.6|~3.0", // from ~2.3|~3.0
"symfony/http-kernel": "~2.4|~3.0", // from ~2.3|~3.0

Should I update the definitions for both monolog-bridge and http-kernel to require ~2.7|~3.0? as 2.4 and 2.6 are both out of maintenance? If this shall become v3 of the bundle should we drop support for Symfony 2.x (making the dependants all ~3.0) or are non-core bundles (e.g. monolog-bundle) version numbers independent of Symfony version numbers?

Indeed we don't track symfony versions at all. And yes I'd say put everything symfony/* to require 2.7|3.0 :)

And yes I'd say put everything symfony/* to require 2.7|3.0

We also depend upon symfony/dependency-injection and symfony/config, both at  ~2.3|~3.0. These dependancies are unaffected by this change. Version bump them too for consistency's sake? (Pretty sure the answer to this is yes, but want to make absolutely sure you want to version bump unrelated dependancies :))
Oh also, I mimiced @fabpot's original PR in deprecating but not removing the NotFoundActivationStrategy class within this bundle. If we're going to target v3 for this, should I remove this class entirely rather than leaving it in for BC reasons?
Would you prefer these changes in additional commits or should I squash them down into one?

Yes I'm thinking we might as well bump it all to 2.7 as the rest is EOL and we go for a major version. The class I would leave it in but maybe add a @trigger_error('Use xxx instead', E_USER_DEPRECATED); to make sure people migrate, because I suspect there might be some that implemented their own activaion strategy by extending this one, so if it suddenly stops working it isn't nice. Doens't cost us much to keep a few lines in.

Added the version bumps to composer.json.
I've just spotted something glaringly obvious that I missed... The constructor definitions are different for the NotFoundActivationStrategy in this bundle and in the bridge (the bridge version injects a RequestStack into the constructor as the first argument). For those people that have inherited from our NotFoundActivationStrategy emptying out the NotFoundActivationStrategy so the class continues to exist won't work as the constructor has changed. We'd have to put extra logic into the DI config to deal with how we build out two different sets of constructor args based upon the activation strategy's class hierarchy ($requestStack, $actionLevel, $excludedUrls in the new world, $actionLevel, $excludedUrls, with passing in $requestStack as a setter in the old), which I'm pretty sure we don't want to do if we're planning a major version bump anyway.
So we've got two choices:

Add extra code to the DI config to deal with the two classes having different constructor args. This would leave us fully backwards compatible, and we wouldn't need a bump to v3.
Force a hard BC break by removing the our NotFoundActivationStrategy entirely. We could make the migration slightly more obvious by leaving in the class and adding a trigger_error("", E_USER_ERROR) in the constructor explaining that any not found activation strategies must now inherit from Symfony\Bridge\Monolog\Handler\FingersCrossed\NotFoundActivationStrategy.

What do you reckon?

Oh right then I'd vote for remove it entirely, and we'll document it in
the changelog.

Cool, my vote would have been for dealing with that in the documentation too.
Removed the class. No more questions from me, I think this is ready to roll.

@Seldaek if you make a v3 of this bundle, it would be great to remove all *.class DIC parameters, to be consistent with the updated Symfony best practice.

Are there any blocking issues/things-to-do preventing v3 (RC or beta) from being released?
I'll be very happy to see this PR merged.

No blocker no, just I don't have any time at the moment, maybe @stof does or someone can help create a complete PR that cleans this up, the *.class params as mentioned by @stof above and upgrade whatever else needs upgrading, I haven't looked at this in a while sorry.

@stof or @Seldaek does this PR still need more work (it's an old PR)? I'm kinda reluctant to add a workaround for this issue.

I'm going to take care of version 3 of the bundle.

Here is the plan:

The new 2.x branch is still maintained;
The master branch is now hosting the upcoming version 3 of the bundle.

In the next coming hours, I'm going to merge some PR on 2.x and 3.

Thank you @BPScott.

FYI, I've added a CHANGELOG in 885da32

@fabpot Thank you for your quick response/actions!


Updating migration extension to 0.1.1 in insiders gallery

Build to get vsix:
https://mssqltools.visualstudio.com/CrossPlatBuildScripts/_build/results?buildId=105490&view=results

@aasimkhan30 gallery updated.


covenant proposal details on alcs to not show errors

I would double check which fields are optional and which aren't. If the field is optional and the user has not entered a value, ALCS should show No Data.

@dhaselhan i just checked and makes sense to have no data. the bug is about showing errors. made changes


[WIP] Support for np.vander

Initial commit, submitting for CI.

Codecov Report

Merging #3212 into master will decrease coverage by <.01%.
The diff coverage is 73.07%.

@@            Coverage Diff             @@
##           master    #3212      +/-   ##
==========================================
- Coverage   81.08%   81.07%   -0.01%
==========================================
  Files         384      384
  Lines       75199    75277      +78
  Branches     8442     8460      +18
==========================================
+ Hits        60977    61034      +57
- Misses      12931    12950      +19
- Partials     1291     1293       +2

CI looks clean, after a few false starts.

There are a few edge cases where numpy type promotion isn't replicated and / or float precision differences can be observed.  I will work on it later this week.

So I think the behaviour is aligned with numpy now, both in terms of type promotion and precision of accumulated values.  Let me know what you reckon when you have some time, ta!


compatibility clause to CS CRDs

for this ticket: https://github.ibm.com/IBMPrivateCloud/roadmap/issues/54203


fix(ci): fix labeler fail

Description
Due to the latest 5.0 version of the labeler component making incompatible changes to the configuration file format, our labeler ci workflow is not functioning properly. I have made fixes for this.
Rationale
The latest version of the labeler component has made incompatible changes to the configuration file format, see: https://github.com/actions/labeler/releases/tag/v5.0.0
Example
none
Changes
Notable changes:

Modify labeler.yml configuration file

According to the document https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#pull_request_target, the pull_request_target event uses the PR base branch, so only after this PR is merged into the base branch, can subsequent PRs observe the effect of the fix.
I conducted an experiment in my own repository and proved that the fix is effective: https://github.com/welkin22/opbnb/pull/13


Agent injects javascript into XML resource when there is a  tag

Description
I'm working on a project that has NITF as the content of an Atom XML feed. NITF has a  tag. It appears that the New Relic agent sees the head tag and assumes it is HTML. And then injects JavaScript.
Expected Behavior
No JavaScript injection for files ending in .xml
Steps to Reproduce

Create an XML resource that includes a  tag
View page source

E.g.
<?xml version="1.0"?>
<feed xmlns:apnm="http://ap.org/schemas/03/2005/apnm" xmlns="http://www.w3.org/2005/Atom" xmlns:apcm="http://ap.org/schemas/03/2005/apcm">
    <author>
        <name>Example</name>
        <uri>http://example.com/</uri>
    </author>
    <id>ExampleId</id>
    <title>Example Title</title>
    <link href="http://example.com/" rel="self"/>
    <updated>2021-07-21T21:00:34-04:00</updated>
    <entry>
        <content type="text/vnd.IPTC.NITF">
            <nitf xmlns="http://iptc.org/std/NITF/2006-10-18/" version="-//IPTC//DTD NITF 3.6//EN">
                <head>
                    <script type="text/javascript">
                    window.NREUM || (NREUM = {});
                    NREUM.info = {
                        "beacon": "bam.nr-data.net",
                        "errorBeacon": "bam.nr-data.net",

Your Environment
Rails 5.2.5
newrelic_rpm (7.1.0)

@jcavalieri Thank you for the report. I have been trying to replicate this behavior in Rails, but our browser monitoring middleware should check that the Content-Type of the response is text/html before injecting any JS. Can you confirm that the XML page in your example is being served as */xml?
https://github.com/newrelic/newrelic-ruby-agent/blob/7.1.0/lib/new_relic/rack/browser_monitoring.rb

@jcavalieri we have not heard from you for a while. I understand everyone has priorities.  If you get a chance, could you respond to the question above, please?  We plan to close this issue next Monday 8/23/2021 if there is no response because we are unable to proceed.

What happens on your end when content type is not set?

But it looks like I need to set the content type. It is not set on our end.

Feel free to close if you would like.

Hello @jcavalieri, thank you for the feedback.  Did adding the content type help to resolve the issue that you saw?

Closing this issue per previous response.


no package.json in the file

also rewrote the code to solve some coding problems.

Thanks for your feedback.


Performances: Log REST/OCPP/MongoDB API performances, data volumes + Traces of calls

Goal is to track the performances and data volumes and we can identify from a REST call how many times the DB is called and same for OCPP to improve the performances.

Goal is to track the performances and data volumes and we can identify from a REST call how many times the DB is called and same for OCPP to improve the performances.

Do not forget that will already have Dynatrace doing it. That kind of report can be already done by it after some reports configuration.
--
Jérôme Benoit aka fraggle
Piment Noir - https://piment-noir.org
OpenPGP Key ID : 27B535D3
Key fingerprint : B799 BBF6 8EC8 911B B8D7 CDBC C3B1 92C6 27B5 35D3

Do not forget that will already have Dynatrace doing it. That kind of report can be already done by it after some reports configuration.

We don't have currently Dynatrace deployed on all the platforms, we depend on a third party tool and it's not free of use.
I think we can really have, with a minimum of effort on our side, our own metrics in thee DB that really fits our need (linking OCPP calls with DB ones grouped under each call, same for REST calls) and plug on top any tools to track and analyze them.
We have also Kibana but as Dynatrace, it's too generic and overkilling tools, we need also to be trained...


[Bug] Fix valtimer teleporting inside polygons

When you tp with valtimer inside a composed obstacle you could get inside of it

Let´s talk about this, maybe we can overlap the colliders.


SPIKE: Research adding filter logic to CAMPD custom data download

Goal: understand LOE to implement logic between filter criteria (e.g. state limits facility)
Request:
Make the filter criteria aware of the data entered into other filter criteria. For example, if program is selected, then facilities a should be limited to facilities that participate in the selected program. If a state is selected, then facilities should be limited to facilities in the selected states. If a facility is selected, then the state should automatically populate to the states associated to the selected facilities. Fuel type, control tech, and unit should be limited based on facility, and vis versa ( limit facility if unit, fuel type, control tech is selected first). This is not a complete list of all the ways that filter criteria should be referential, but can be used as examples for the research. Ideally, filters should update in real time based on current selections , and provide feedback to the user if an invalid selection is made (e.g. selected facility and state combo is not valid).
Background:
From:	Lageman, Travis<EMAIL_ADDRESS>on behalf of Lageman, Travis
Sent:	Thursday, April 15, 2021 4:28 PM
To:	janell coleman; Jorja Comer
Cc:	Desantis, Laurel; Ibarra, Michelle; Mo Adeyoju; Stetsyuk, Karina; Gill, Sandeep; Chang, Ming;
Kuhns, Jason; Heese, Michael
Subject:	Add Filter Logic for CAMPD to Backlog
Hi Jorja & Janell,
We’ve been discussing this peripherally over the last month or so, but we’d like to officially get the filter
logic requirement in the backlog for CAMPD. This requires the Custom Data Download tool to have logic
to update the filter criteria dynamically based on the order of filter criteria selected by the user. For
example, in an hourly emissions query, if a user first selects the ARP program, all other filters adjust and
only allow options matching the ARP filter. So if a user wanted to subsequently filter on state, the user
could only choose states belonging to ARP. After this second filter is selected, all the other remaining
filter criteria would update accordingly. This would happen continuously as additional filters are picked
in order to ensure users do not build a query that returns no data.
We’d like to create a ticket in the backlog for the developers to look into this in PI 4 (dev spike if
necessary) so EPA can understand our options and LOE for this before we implement a solution. This
does not change our current priority to meet our May demos. Additionally, per the developers earlier
suggestion, we will continue to develop the hourly emissions filters in the custom data download UI
without any relationships first to “get them out there”. However, one question we expect to be
answered after the developers look into this is when should we implement this logic? Does it make
more sense to implement after we complete the hourly emissions filters before we add in the other data
types and associated filters (e.g., allowance, compliance data) or just get all the other data types and
filters out there first and implement logic last? We want to plan ahead and be efficient with our
approach.
To summarize:
Let’s add a ticket into the backlog for the filter logic requirement and possible options described above
to visit during PI 4 planning. After the developers are able to look into this and provide options, EPA also
wants to know when it is most efficient to implement the proposed options in relationship to ongoing
development. For this reason, we are hoping to get this research done earlier in PI 4 but we can discuss
further during PI 4 planning due to the prioritization of May demo work.
Thanks and happy to answer any follow up questions.
Best,
Travis Lageman
Environmental Policy Analyst
Clean Air Markets Division
U.S. Environmental Protection Agency
P:<PHONE_NUMBER>

I think we can handle this by modifying the GetFacilities api endpoint to include the Programs, Unit Types, Fuel Types, & Control Tech that are applicable for each facility. The front end UI application can then uses this data to filter the available selections for all filters each time the Apply Filter button is clicked based on the current selections of all filters.
Clarifications:

Do the non-available items show in the dropdown disabled (greyed out and not selectable) or not even be in the list?
Do the non-available items show in the checkbox groups disabled (greyed out and not selectable) or not shown at all? I have seen wireframes where selections are there but greyed out.
Is this just for Program, State, Facility, Unit Type, Fuel Type, & Control Tech? I have not looked at any other filter relationships so those would be out of scope at this point.

Tasks Needed
Need a task to modify the Facilities api to include the Programs, Unit Types, Fuel Types, & Control Tech that are applicable for each facility.
Need a task to add logic to all filters which will filter the available selections based on current selections of all filters when the Apply Filter button is clicked.

@tlageman-epa Research completed. Output can be found on MS teams here


Update example parquet file

Adds bbox, consistent with https://github.com/opengeospatial/geoparquet/pull/21/
Fixed the pyarrow.parquet import

xref https://github.com/opengeospatial/geoparquet/issues/22. Will leave that open till all the changes in 0.1 are final. I think the main outstanding issue is https://github.com/opengeospatial/geoparquet/issues/9. This file should still be compatible with that, but we'll want to add a second example with planar edges.

How about adding conda environment.yml? I'm using this one atm:
name: geoparquet
channels:
 - conda-forge
dependencies:
 - python=3.9*
 - geopandas
 - folium
 - pyarrow

I'll wait for https://github.com/opengeospatial/geoparquet/pull/25/files to be merged, otherwise we'll have a conflict with the updated example output.

Added the optional edges field, as specified in https://github.com/opengeospatial/geoparquet/pull/27.


After the user increased the slippage, the transaction still did not go through!

After the user increased the slippage, the transaction still did not go through!
https://connextscan.io/tx/0xbecc0c933ce5bd16756595295772212312f75cf8166b1b2848e5bc7b9264ccda
DC link:https://discord.com/channels/454734546869551114/1153925615225937930/1153925619005001808
Bump link:https://www.bscscan.com/address/0x1A136a883CC6a4254F225Ca0a8bCCD8f2e4433bA

Need to wait for a while after bump. anyway executed!


Router failure during CF Installation

Hello guys,
I am trying to get CF up and running on boshlite. Attached is the screen scratch of the installation steps followed, deploy.xml and debug logs for router job.
I tried fixing this with cck but could not get it up and running.Please let me know what am I missing.
Issue.zip
Regards,
Xhings

@Xhings your manifest contains:
properties:
  router:
    enable_routing_api: true

This means you are trying to deploy the routing API. This feature requires diego and the routing release, so if you do not want this feature, remove this line or set enable_routing_api: false.
How did you create this bosh-lite manifest? The recommended method is to use ./scripts/generate-bosh-lite-dev-manifest from the cf-release directory which does not result in this property being set.
Thanks,
Rob & @nimakaviani

Closing, no response after 7 days.


OUYA Support?

If this is truly the next Facebook then this should be available on the OUYA, the next great console.

We are planning to implement OUYA support after we finish testing the
BlackBerry edition. Thanks for your interest!
On Mar 17, 2017 2:50 PM, "Sean McKenna"<EMAIL_ADDRESS>wrote:

If this is truly the next Facebook then this should be available on the
OUYA, the next great console.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/ZakSingh/The-Next-Facebook/issues/2, or mute the
thread
https://github.com/notifications/unsubscribe-auth/ARuS3xfzeX3SFtaywcZm49LgKXJCPMSRks5rmwAIgaJpZM4MhI5d
.


incremental builds via scons?

Operating system or device - Godot version:
linux ubuntu 16.04 lts 64 bit.
godot master zip downloaded Oct 17th 2016.
Issue description (what happened, and what was expected):
expecting project to support incremental builds.
Steps to reproduce:

i made a 3 line change inside gd_script.cpp.
ran "scons platform=x11" to build
it took a long time, seemed to be rebuilding everything?
just wondering if this is expected or if others have experienced it or if i am just doing / thinking something wrong.

i am wrong. there was another .h file edited, which explains it. my fault.


Is this repo participating in Hacktoberfest - 2021 ?

even I had the same question!
seems like the maintainers are not actively maintaining this repo!


BTooltip does not stay open when being hovered with the mouse

Describe the bug
When creating a BTooltip with interactive content (e.g. a link), the BTooltip needs to stay open while being hovered by the mouse so that the user can interact with the content (e.g. click the link).
However, at the moment (bootstrap-vue-next 0.16.1) the tooltip hides as soon as you move away from the original hover element making it impossible to interact with the content (e.g. click the link).
Expected

BTooltip stays open while being hovered with the mouse

Update:
Actually I just noticed this is a difference between bootstrap-vue and bootstrap (5.3):

In bootstrap-vue (see https://bootstrap-vue.org/docs/components/tooltip#noninteractive-tooltips ) the tooltips are interactive by default and stay open on hover
But in bootstrap 5.3 (see https://getbootstrap.com/docs/5.3/components/tooltips/#custom-tooltips ) it is closed when hovering
So it might indeed not be a bug but rather a feature request to be able to keep it open on hover (= have the possibility to keep the BootstrapVue interactive behavior).

Reproduction
https://stackblitz.com/edit/github-ydahcf?file=src%2Fcomponents%2FComp.vue
Used Package Manager
npm
Validations

[X] Have tested with the latest version. This is still alpha version and sometime things change rapidly.
[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

I now noticed it works if the BTooltip gets :noninteractive="false" set. Then it stays open on hover.
So this works to keep the BTooltip open on hovering the tooltip:
<BTooltip :target="..." placement="..." :noninteractive="false">
</BTooltip>

However, it seems a bit strange to have to set a "negated" property noninteractive to false to make the BTooltip interactive.
So as an improvement suggestion:
Probably it would be better to change this property to be named interactive which defaults to false (e.g. matches the Bootstrap 5.3 behavior) and if explicitly set to true, it makes the BTooltip stay open.

tooltip now has interactive prop.


is pretrained model broken ?

when i run the command :
python train_monodepth2.py train config/monodepth2_kitti.yml ./model/pretrained_model/model.latest
i am getting the error :
_Traceback (most recent call last):
File "train_monodepth2.py", line 51, in
_cli_test(config, output_dir, args)
File "train_monodepth2.py", line 25, in cli_test
monodepth2_learner.test(output_dir)
File "C:\Users\essys\Desktop\project_1\depth_estimation\tf-monodepth2-master\tf-monodepth2-master\model\monodepth2_learner.py", line 371, in test
self.saver.restore(sess, latest_ckpt)
File "C:\Users\essys\Anaconda3\envs\tf_gpu\lib\site-packages\tensorflow\python\training\saver.py", line 1274, in restore
raise ValueError("Can't load save_path when it is None.")
ValueError: Can't load save_path when it is None.

Sorry for late reply, have you solved this problem? I will have a try on it.

I haven't tried since, did you update the model ?

@ixtiyoruz I just have a try. and soory, it's my fault, you need to add a checkpoint txt file to tell tensorflow which model you decide to use, example like that:
filename: checkpoint (no extension)
file detail:
model_checkpoint_path: "/YOUR/PATH/TO/pretrained_model/model.latest"
put this file inside pretrained_model directory and everything will be ok.

Sorry for late reply, Ok, Thank you.


Add sonar.projectBaseDir

The setting for projectBaseDir is missing. Would be nice to add it. As a workaround, ArgumentCustomization can be used for now.

Is now included in version 1.1.30 (#111).


http: fixing upstream stream limit bug (backport #14820)

Fixing a bug where the Envoy upstream logic didn't respect stream limits capped by upstream.
Backport of 06d0780 into v1.17
Signed-off-by: Yan Avlasov<EMAIL_ADDRESS>

Curious, why are we backporting this one?  AFIK it's not a security or stability risk

Curious, why are we backporting this one? AFIK it's not a security or stability risk

@antoniovicente thinks it was serious enough to warrant a backport. One consideration is that in 1.17 upstreams are trusted, so it may have less of an impact.

Will not backport as it does not meet policy requirement.


Kdeconnect: add sshfs dependency and provide NixOS module

Adds sshfs as runtime dependency with makeWrapper
Adds programs.kdeconnect to open required UDP/TCP ports

Motivation for this change
Kdeconnect requires sshfs for opening filesystem connections to android devices. The UDP/TCP ports are required that Kdeconnect can find other devices.
Things done
Please check what applies. Note that these are not hard requirements but merely serve as information for reviewers.

[x] Tested using sandboxing
(nix.useSandbox on NixOS,
or option build-use-sandbox in nix.conf
on non-NixOS)
Built on platform(s)

[x] NixOS
[ ] macOS
[ ] Linux

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nox --run "nox-review wip"
[x] Tested execution of all binary files (usually in ./result/bin/)
[x] Fits CONTRIBUTING.md.

Should have tried to install sshfs before modifying the package. Sorry for that!
Hmm, but isn't kdeconnectd a service? It's running in the background as daemon, for me that sounds like a service :D Yeah it would be more like a user service.
My initial intention for this pr was that kdeconnect could not find my android device.Luckily I remembered that Nixos has a firewall and the ports for kdeconnect needs to be opened. This should at least be documented (required open ports and how).

There has not been any other feedback so I am closing this.


CSV Template URL is pointing to wrong endpoint when using backend with admin plugin

When using the admin portal on the backend via the plugin option, you connect to it using URL:PORT/app (by default). Most things work but on the product list page, there is an Import Products modal button, which has a CSV template link at the bottom. This link points to: http://URL:PORT/temp/product-import-template.csv
But with the admin being a plugin, it should be ...PORT/app/temp/product-import-template.csv
Adding the /app/ to the URL in the middle allows you to fix it and download the template. On an installation where I have a standalone admin this issue doesn't exist.

Please open this issue in our core repository, as it relates to the admin plugin.


Allow verbose version output

What type of PR is this?
/kind feature
What this PR does / why we need it:
We now add two default fields to the version output (the target triple as well as the cargo version) as well as make verbose output possible. The verbose output contains the full dependency tree to enhance debugging possibilities.
Which issue(s) this PR fixes:

None
Special notes for your reviewer:
None
Does this PR introduce a user-facing change?

- Added cargo version and target triple to version output.
- Allow verbose version output which now contains the full dependency tree.

Codecov Report

Merging #707 (4c9d28e) into main (2965513) will increase coverage by 0.78%.
The diff coverage is 54.16%.

@@            Coverage Diff             @@
##             main     #707      +/-   ##
==========================================
+ Coverage   32.75%   33.54%   +0.78%
==========================================
  Files          13       13
  Lines        1093     1109      +16
  Branches      402      411       +9
==========================================
+ Hits          358      372      +14
+ Misses        461      457       -4
- Partials      274      280       +6

/lgtm


Add support for multi-process debugging in experimental debugger

This feature will allow debugging of django, flask with support for auto-reloading.
Upstream https://github.com/Microsoft/ptvsd/issues/57

Closed in favor of #80


housekeeping stuck in ContainerCreating mode

When housekeeping and persistence are enabled pods with volumes should be started on the same nodes, at least on GCP, as GCP can mount any from default storage classes only to one node at the same time.
By looking into CronJob template i see that it tries to mount those volumes, but then again, reading https://demo.netbox.dev/static/docs/administration/housekeeping/ documentation housekeeping needs only database access.
Another possible solution would be to write podAffinity so that cronjob is started on node together with netbox application

Sure, i will start working on this :)

Actually it is same situation with worker pod too.

by working on this, found also, that, if ReadWriteOnce is used, then housekeeping should be disabled, cause CronJob does not have PodAffinity definition

There's a housekeeping.affinity setting that does what you want I think?

CronJob does not support affinity as per spec: https://kubernetes.io/docs/reference/kubernetes-api/workload-resources/cron-job-v1/

CronJob doesn't need to support it, it's not its job. All a CronJob does is create Jobs from the jobTemplate based on the schedule. Similarly, Jobs don't do much more than create Pods based on their template field. That template, though, is a full Pod spec, and that's available in the spec.jobTemplate.spec.template.spec field. I haven't tested it, but I don't see any reason the affinity field we've already got in our housekeeping CronJob template wouldn't work.

ok, my bad, i saw error about that affinity when tried on cronjob, but that was cause of spacing wrong in definition.

@Atoms is right about the spacing in affinity definition. It should be nindent 12 instead of nindent 8
There 3 lines need to be fixed. Should I open a PR?
https://github.com/bootc/netbox-chart/blob/master/templates/cronjob.yaml#L161
https://github.com/bootc/netbox-chart/blob/master/templates/cronjob.yaml#L165
https://github.com/bootc/netbox-chart/blob/master/templates/cronjob.yaml#L169

Oh d'oh. Yes please, a PR would be really handy, thanks.

i would like to revive this as it still exists... this is what i have:
admin@azure-box:~/Netbox/internal$ kubectl get pods -n netbox
NAME                                 READY   STATUS              RESTARTS   AGE
netbox-64d9d994c5-g44rg              1/1     Running             0          2d22h
netbox-housekeeping-27450720-ktlgb   0/1     ContainerCreating   0          2d10h
netbox-postgresql-0                  1/1     Running             0          2d22h
netbox-redis-master-0                1/1     Running             0          2d22h
netbox-redis-replicas-0              1/1     Running             0          2d22h
netbox-redis-replicas-1              1/1     Running             0          2d22h
netbox-redis-replicas-2              1/1     Running             0          2d22h
netbox-worker-5b74cfd4-rnxqk         1/1     Running             2          2d22h

and this is the describe
sadmin@azure-box:~/Netbox/internal$ kubectl describe pod netbox-housekeeping-27450720-ktlgb -n netbox
Name:           netbox-housekeeping-27450720-ktlgb
Namespace:      netbox
Priority:       0
Node:           aks-nodepool1-27323697-vmss00000c/<IP_ADDRESS>
Start Time:     Sat, 12 Mar 2022 00:00:00 +0000
Labels:         app.kubernetes.io/component=housekeeping
                app.kubernetes.io/instance=netbox
                app.kubernetes.io/name=netbox
                controller-uid=7f27bfeb-a813-4065-aa83-4921e34e0b23
                job-name=netbox-housekeeping-27450720
Annotations:    <none>
Status:         Pending
IP:
IPs:            <none>
Controlled By:  Job/netbox-housekeeping-27450720
Containers:
  netbox-housekeeping:
    Container ID:
    Image:         netboxcommunity/netbox:v3.0.11
    Image ID:
    Port:          <none>
    Host Port:     <none>
    Command:
      /opt/netbox/venv/bin/python
      /opt/netbox/netbox/manage.py
      housekeeping
    State:          Waiting
      Reason:       ContainerCreating
    Ready:          False
    Restart Count:  0
    Environment:    <none>
    Mounts:
      /etc/netbox/config/configuration.py from config (ro,path="configuration.py")
      /opt/netbox/netbox/media from media (rw)
      /run/config/netbox from config (ro)
      /run/secrets/netbox from secrets (ro)
      /tmp from netbox-tmp (rw)
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-chp5t (ro)
Conditions:
  Type              Status
  Initialized       True
  Ready             False
  ContainersReady   False
  PodScheduled      True
Volumes:
  config:
    Type:      ConfigMap (a volume populated by a ConfigMap)
    Name:      netbox
    Optional:  false
  secrets:
    Type:                Projected (a volume that contains injected data from multiple sources)
    SecretName:          netbox
    SecretOptionalName:  <nil>
    SecretName:          netbox-postgresql
    SecretOptionalName:  <nil>
    SecretName:          netbox-redis
    SecretOptionalName:  <nil>
    SecretName:          netbox-redis
    SecretOptionalName:  <nil>
  netbox-tmp:
    Type:       EmptyDir (a temporary directory that shares a pod's lifetime)
    Medium:     Memory
    SizeLimit:  <unset>
  media:
    Type:       PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
    ClaimName:  netbox-media
    ReadOnly:   false
  kube-api-access-chp5t:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   BestEffort
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason       Age                      From     Message
  ----     ------       ----                     ----     -------
  Warning  FailedMount  58m (x248 over 2d10h)    kubelet  Unable to attach or mount volumes: unmounted volumes=[media], unattached volumes=[secrets netbox-tmp media kube-api-access-chp5t config]: timed out waiting for the condition
  Warning  FailedMount  22m (x483 over 2d10h)    kubelet  Unable to attach or mount volumes: unmounted volumes=[media], unattached volumes=[config secrets netbox-tmp media kube-api-access-chp5t]: timed out waiting for the condition
  Warning  FailedMount  17m (x260 over 2d10h)    kubelet  Unable to attach or mount volumes: unmounted volumes=[media], unattached volumes=[netbox-tmp media kube-api-access-chp5t config secrets]: timed out waiting for the condition
  Warning  FailedMount  12m (x268 over 2d10h)    kubelet  Unable to attach or mount volumes: unmounted volumes=[media], unattached volumes=[kube-api-access-chp5t config secrets netbox-tmp media]: timed out waiting for the condition
  Warning  FailedMount  3m46s (x277 over 2d10h)  kubelet  Unable to attach or mount volumes: unmounted volumes=[media], unattached volumes=[media kube-api-access-chp5t config secrets netbox-tmp]: timed out waiting for the condition

additional information,  if i added podaffinity under "netbox-housekeeping" ,  that cannot be used.
here is values.yml extract
  affinity:
    podAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
       - weight: 50
         podAffinityTerm:
           labelSelector:
             matchExpressions:
             - key: app.kubernetes.io/component
               operator: In
               values:
                 - netbox
           topologyKey: "kubernetes.io/hostname"

but that cannot be applied: Error: UPGRADE FAILED: error validating "": error validating data: ValidationError(CronJob.spec.jobTemplate.spec.template): unknown field "podAffinity" in io.k8s.api.core.v1.PodTemplateSpec

did you need netbox and the worker to be on the same node?

yes, as they share a common volume. I expect this will be the case with the netbox-housekeeping pod too.
Looking at the code, the component label is housekeeping: https://github.com/bootc/netbox-chart/blob/master/templates/cronjob.yaml#L16
so try this in your values.yaml:
affinity:
  podAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
    - topologyKey: kubernetes.io/hostname
      labelSelector:
        matchExpressions:
        - key: app.kubernetes.io/component
          operator: In
          values:
          - housekeeping
          - netbox

housekeeping:
  affinity:
    podAffinity:
      requiredDuringSchedulingIgnoredDuringExecution:
      - topologyKey: kubernetes.io/hostname
        labelSelector:
          matchExpressions:
          - key: app.kubernetes.io/component
            operator: In
            values:
            - housekeeping
            - netbox

PR #89 is a good start at a documentation update to "fix" this issue.