CLI support

Basic CLI support for Flask-SQLAlchemy, modeled after the CLI support in Flask-Security. Supports the following command:

flask db create

I don't know how I feel about this. I'd rather people use Flask-Alembic or Flask-Migrate to manage their tables.

FWIW, even when using Flask-Migrate and Alembic it's usually a good idea to let SQLAlchemy deal with creating the initial revision. However, I think adding support to call create_all (and at the same time stamp the alembic state to 'head') through the CLI exposed in there would make more sense.

@davidism: It shouldn't be too hard to have Flask-Alembic or Flask-Migrate add commands to the db command group. Just import it and modify it. For example:
try:
    from flask_sqlalchemy.cli import db
except ImportError:
    @click.group()
    def db():
        pass

@db.command()
def migrate():
    # implementation here...

@davidism: I created an example repository that demonstrates how I think we could resolve this problem. It turns out that if you set up both Flask-SQLAlchemy and Flask-Alembic, and they both try to create a command group named db, the second extension will clobber the first. This is actually a good thing: we can re-implement these Flask-SQLAlchemy commands in Flask-Alembic, and do them the Alembic way.
Example repo: https://github.com/singingwolfboy/flask-sqlalchemy-alembic-test
Can you take a look, and tell me what you think of this approach?

But is that order guaranteed? There's no requirement that Flask-Alembic/Migrate is initialized after Flask-SQLAlchemy.

It kind of makes sense to initialize Flask-SQLAlchemy before an extension that depends on it. Doesn't seem to be a hard requirement though (at least not when using init_app())

I guarantee we will get users doing it in the "wrong" order unless Flask-Alembic/Migrate enforce it in init_app.
While I recognize that create/drop commands would be useful for quick apps, for pretty much any serious development I want to encourage people to use Alembic to manage their database. This is partially just a documentation issue. We should have a page that says "create your tables. If you're doing this a lot, use Alembic to manage migrations."
@miguelgrinberg any comments?

Keep in mind that "quick apps" are a major use case for Flask. Many people who want database support in Flask aren't interested in setting up database migrations, because it's too much overhead for what they're looking for.

The argument that this is useful for quick apps isn't strong in my opinion. A quick app will likely use a SQLite database. If I need to drop all tables in a SQLite database, I delete the database file, as that is fully accurate, unlike drop_all() which may miss tables if the database metadata changed from when the tables were created with create_all(). I honestly don't like drop_all() because it isn't implemented to do what you would expect, so I would not expose it more by adding a command for it.
I guess I can see a benefit in having a create command, but I suggest not implementing drop. Instead, I would add a --drop-tables-first option to create for example, which I think makes it a bit more obvious that you are dropping the tables that you are about to create, not the tables that were created long ago.

Would you be willing to update Flask-Migrate so it ensures it's initialized after Flask-SQLAlchemy? That way we guarantee the correct commands are used.

@davidism I assume you mean doing this, right? That's not a problem I can add that.

@miguelgrinberg I hadn't thought about that argument against drop_all(). Between that, and @ThiefMaster vote against it, I'm OK with removing the db drop command.

@miguelgrinberg I'm going with
def init_app(self, app):
    if 'sqlalchemy' not in app.extensions:
        raise RuntimeError('you need to initialize Flask-SQLAlchemy first')

and adding a create command that just calls upgrade, so that users can't mistakenly call create when Alembic should be managing the tables.

Don't some people use SQLAlchemy directly, without using the Flask-SQLAlchemy extension? Do you think that any of them use Flask-Alembic or Flask-Migrate? If so, they probably won't be happy with a mandatory dependency on Flask-SQLAlchemy (although it's easy enough to work around, just by shoving some random object in app.extensions['sqlalchemy']...)

Not sure about Flask-Migrate, Flask-Alembic only works if Flask-SQLAlchemy is installed, I don't currently support other setups.

@davidism If Flask-Alembic already has a hard dependency on Flask-SQLAlchemy, then enforcing the ordering is definitely a good idea.

Flask-Migrate also requires Flask-SQLAlchemy.
@davidism is it necessary to force the init of Flask-SQLalchemy first? Importing the db command should get things in the correct order, I think? And that way I don't have to force users to upgrade Flask-SQLAlchemy if they don't want to, specially considering some deprecated items might be going away soon.

Either way will work, neither requires updating Flask-SQLAlchemy.

I pushed a commit to remove the flask db drop command. Is there anything else that needs to be done here, or can this be merged?

@singingwolfboy The db_drop import in test_cli.py failed the build for some Python versions.
Thanks for the PR ;) it seems quite handy!

The pull request is now passing tests. Is there anything else that needs to be done here, or can this be merged?

Bump here? Also, needs rebase :)

@gaffney thanks for the reminder! I've rebased the pull request.

Note that Travis CI is only failing this pull request because it's trying to build on Python 2.6, which SQLAlchemy no longer supports. #621 should resolve this issue.

Closing for now, this is too outdated. Opened #1090 to summarize and discuss a bit more.


Auto backups stopped

As of Aug 5th automatic wallet backups stopped creating themselves.
I was asked to check my backups per Mercosity who's wallet stopped auto backing up Aug 5th and user step1 was with us in #gridcoin and checked folder too..
Windows system , win7 for me.

August 5 would be from <IP_ADDRESS>-Leisure released on the very same day.

See feature request in issue #570 about using deterministic wallets.

I'm Win & too .. checking to see if my cold storage wallet.dat from today is functioning .. will report back.

if you type 'execute backupwallet' and it works correctly then your client is not running for atleast 900 blocks which is how often the wallet will backup. your wallet must be on non stop for a day for it to auto backup. may consider decreasing the time

still having no issues and some people i've asked this is working correctly. I'm thinking tht ya we backup the config and wallet every 960 blocks but maybe its be better if we also did it on start up as well

still unable to find any problems with this. I had @Mercosity set a lower value in config for backup interval and it worked without a problem.
#593 changes from cdbl to GetArg (int) alone. Users also are able to set a walletbackupinterval in there config as well to choose a backup interval that best suits there wishes. will keep an eye on this and talk to more windows users who have made it the 900 blocks without a crash, etc

Should be fixed in <IP_ADDRESS>.


Fix plot default symbol

This PR fixes the issue with default symbol in plot widget.
To me the silx.config.DEFAULT_PLOT_CURVE_SYMBOL feature is a bit ambiguous, any better idea welcome.
closes #2488

This changes silx.config.DEFAULT_PLOT_CURVE_SYMBOL to be a boolean rather than a symbol name.
It makes it cleaner: DEFAULT_PLOT_SYMBOL defines the default symbol for scatter, curves and DEFAULT_PLOT_CURVE_SYMBOL toggle the display of symbols for curves if not specified.

Renamed DEFAULT_PLOT_CURVE_SYMBOL to DEFAULT_PLOT_CURVE_SYMBOL_MODE.
Problem fixed, name is less ambiguous, but I'm not convinced the DEFAULT_PLOT_CURVE_SYMBOL_MODE is really useful, as one can call PlotWidget.setDefaultPlotPoints


UI improvement in Login Button

Is your feature request related to a problem? Please describe.
The UI of the current login button is not looking good.
Describe the solution you'd like
The sign-in button UI should be like this: -

@yoayushraj99, Can I work on this issue?

I would like to work on this issue. Please assign it to me

I have updated the button @Abhishek-kumar09  please review my PR

Also can we add more options for Sign in ?
Eg - Sign in with Github .
@Abhishek-kumar09


considering react-query-firebase to speed up database integration?

@amandeepmittal Thank you for this repo!
I keep it as a reference.
Recently, I landed on this: https://github.com/invertase/react-query-firebase

React Query Firebase provides a set of easy to use hooks for handling asynchronous tasks with Firebase in your React application.

Tested and deployed successfully to production with:
"expo": "^44.0.0",
"firebase": "9.7.0",

Maybe we can update the README.md in a "Integrating database features" section?

Hi @flexbox, thanks for recommending it. I am big fan of react-query library. I think it will be a good edition. I have some ideas to convert this starter kit to use native Firebase SDKs using react-native-firebase library from Invertase. I will definitely look into your recommendation and may be start using it :)
Thanks for all the mindful and useful suggestions you have recommend and for keeping this repo as a reference :)


Passing environment variables as parameters

Hi,
The documented example example indicates that a mapping of environment variables can be used.
env:  # mapping of environment variables to add

Is it possible to parameterise this by passing a mapping, as I cannot get this to work based on the example docs.
For example;
# StepTemplate.yml

parameters:
    PassedVariables: {}

steps:
    - task: PowerShell@2
     # snip #
        inputs:
            targetType: 'filePath'
            filePath: MyExampleScript.ps1
            env:
            ${{ insert }}: ${{ parameters.PassedVariables }}

# EntryPoint.yml
jobs:
  - job: MyTestJob
    # snip
    - template: StepTemplate.yml
        variables:
            SomeVariable: 'This is an example variable'
        parameters:
            PassedVariables:
                Var1: 'Hello World'
                Var2: $(SomeVariable)

The issue I am having is, I was expecting that when I run my script I can echo the $ENV:XXX variable but it doesn't seem to work correctly, probaly an ID10T error but where am I going wrong?
# MyExampleScript.ps1
Write-Host "$ENV:Var1 $ENV:Var2" # Doesnt work :(
Write-Host "$Var1 $Var2" # I never expected this to work but tried anyways

Apologies for the short example, hopefully makes sense, otherwise I can expand upon it later.
Thanks.

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

ID: a0e444c2-69c6-4d71-6fd0-94d0f4097d3a
Version Independent ID: 3a727833-1cc3-c2fb-c5b3-22605eee2721
Content: PowerShell task - Azure Pipelines
Content Source: docs/pipelines/tasks/utility/powershell.md
Product: devops
GitHub Login: @andyjlewis
Microsoft Alias: alewis

I think you're really close, just have a syntax problem with env -- it's a peer of inputs. Here's what worked for me:
# azure-pipelines.yml
steps:
- checkout: none
- template: template.yml
  parameters:
    PassedVariables:
      Var1: 'Hello World'
      Var2: 'Foo bar'

# template.yml
parameters:
  PassedVariables: {}

steps:
- task: PowerShell@2
  inputs:
    targetType: 'inline'
    script: |
      Get-ChildItem Env:
  env:
    ${{ insert }}: ${{ parameters.PassedVariables }}


OT-RCP Patch for SS

I was looking building one test RCP firmware that can being used with Universal flasher but i cant finding how you have doing the patch for getting the command for reboot to bootloader mode.
Can you pointing it out and also how to putting it in SS local code and how to getting it linked to the SS project ?
Thanks in advance !!
MW

The OT RCP firmware "reboot into bootloader" feature requires this change: https://github.com/NabuCasa/universal-silabs-flasher/pull/13
As for Simplicity Studio: Best is to generate the project with the option to copy all SDK files set, then patch the firmware's gecko_sdk_4.2.2 directory using the patches from https://github.com/NabuCasa/silabs-firmware-builder/tree/main/OpenThreadRCP/GeckoSDK/.


Add minor version label in backup.info

Problem Statement
When making a full backup, pgmoneta currently records the PostgreSQL server's major version in the backup.info file but does not include the minor version. Including only the major version (e.g., 16) provides incomplete information about the PostgreSQL server version used during the backup. This can lead to ambiguity, especially when trying to restore backups, as minor version differences can also be critical to ensuring compatibility and understanding the exact environment the backup was taken from.
Additional information
Consider backward compatibility with existing tools or scripts that parse the backup.info file. Adding a new label should not break existing parsing logic but should be documented.

I have committed and pulled the request linking to this issue.

Please, add yourself to AUTHORS as well

Please, add yourself to AUTHORS as well

Done. Thanks for reminding me!


REST Protocol do not work

i want to login cas in my android app.so i add the Configuration in my cas server web.xml:

restlet
org.restlet.ext.spring.RestletFrameworkServlet
1

restlet
/v1/*

but ii can not to work,and the url 'v1/tickets' will to be filtered.
and the where is the jar which include  org.restlet.ext.spring.RestletFrameworkServlet ?

Please post your questions to the cas-user mailing list first.


SvelteKit 2: static build fails "env" is not exported by "virtual:$env/static/private", imported by "src/routes/+page.server.ts"

Describe the bug
I have a static website that contains this import statement:
import { env } from '$env/static/private';

The build fails with the message :
RollupError: "env" is not exported by "virtual:$env/static/private", imported by "src/routes/+page.server.ts".
Reproduction
To reproduce, add a .env file with you environment variables and add use this +page.server.js file:
import { env } from "$env/static/private";

export const prerender = true;

export const load = () => {
  return {
    exampleEnv: env.EXAMPLE,
  };
};

Here is a repro repo containing the example code used.
Even the import statement used is highlighted in red:

Logs
Here is the full log:

✓ 85 modules transformed.
"env" is not exported by "virtual:$env/static/private", imported by "src/routes/+page.server.ts".
file: /home/fayez/sveltekit-prerender-env-issue/src/routes/+page.server.ts:1:9
1: import { env } from "$env/static/private";
            ^
2:
3: export const prerender = true;
error during build:
RollupError: "env" is not exported by "virtual:$env/static/private", imported by "src/routes/+page.server.ts".
    at error (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/parseAst.js:337:30)
    at Module.error (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:12755:16)
    at Module.traceVariable (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:13192:29)
    at ModuleScope.findVariable (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:11609:39)
    at ReturnValueScope.findVariable (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:5911:38)
    at FunctionBodyScope.findVariable (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:5911:38)
    at MemberExpression.bind (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:8471:49)
    at Property.bind (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:4639:23)
    at ObjectExpression.bind (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:4635:28)
    at ReturnStatement.bind (file:///home/fayez/sveltekit-prerender-env-issue/node_modules/.pnpm/rollup@4.9.1/node_modules/rollup/dist/es/shared/node-entry.js:4639:23)
 ELIFECYCLE  Command failed with exit code 1.

### System Info

```Shell
System:
    OS: Linux 6.1 EndeavourOS
    CPU: (8) x64 11th Gen Intel(R) Core(TM) i7-1195G7 @ 2.90GHz
    Memory: 5.37 GB / 15.33 GB
    Container: Yes
    Shell: 5.9 - /usr/bin/zsh
  Binaries:
    Node: 18.19.0 - /run/user/1000/fnm_multishells/22872_1702877718005/bin/node
    npm: 10.2.3 - /run/user/1000/fnm_multishells/22872_1702877718005/bin/npm
    pnpm: 8.12.1 - /run/user/1000/fnm_multishells/22872_1702877718005/bin/pnpm
  npmPackages:
    @sveltejs/adapter-auto: ^3.0.0 => 3.0.0
    @sveltejs/kit: ^2.0.0 => 2.0.2
    @sveltejs/vite-plugin-svelte: ^3.0.0 => 3.0.1
    svelte: ^4.2.7 => 4.2.8
    vite: ^5.0.3 => 5.0.10

Using `pnpm` and `Node 18`, I also reproduced this issue using `npm` and `Node 20`.

Severity
blocking an upgrade
Additional Information
No response

You should import the name of the env variable

What should we do now in an CI in Sveltekit 2?
My Drone CI build does not have any environment variables or static .env in the repository. The environment variables on my system are passed in the k8s deployment.


x/build: fix broken Docker on arm64 packet builders

Some of the arm64 packet builders stopped working.
Over time, the docker daemon lost track of more and more exited containers.
root@go-builder:~# docker ps
CONTAINER ID        IMAGE                      COMMAND                  CREATED             STATUS              PORTS               NAMES
e9da62e0e524        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 seconds ago       Up 2 seconds                            packet07
be4cad637e87        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   About an hour ago   Up About an hour                        packet09
4198b1b3aaf5        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   About an hour ago   Up About an hour                        packet15
48bada399702        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   About an hour ago   Up About an hour                        packet19
5ca10cbf91ad        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   About an hour ago   Up About an hour                        packet20
8c78fd256b38        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   2 hours ago         Up 2 hours                              packet16
4b89ff505063        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 hours ago         Up 3 hours                              packet01
b7918b0fc69e        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 hours ago         Up 3 hours                              packet03
3ea996a7951c        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 hours ago         Up 3 hours                              packet11
51d2bb94fca2        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 hours ago         Up 3 hours                              packet13
7e3530aa3598        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   4 hours ago         Up 4 hours                              packet02
bed226aba206        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 weeks ago         Up 3 weeks                              packet04
4e4eba80cfb6        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   4 weeks ago         Up 4 weeks                              packet12
aae8adfd568c        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   5 weeks ago         Up 5 weeks                              packet17
a56f27c8b515        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   3 months ago        Up 3 months                             packet14
39f54b77d230        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   4 months ago        Up 4 months                             packet08
e64dd9975d1c        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   4 months ago        Up 4 months                             packet06
595355800eba        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   4 months ago        Up 4 months                             packet05
69559e6aa207        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   5 months ago        Up 5 months                             packet10
39b1689d4c2a        gobuilder-arm64-packet:1   "/usr/local/bin/stage"   5 months ago        Up 5 months                             packet18

root@go-builder:~# docker logs packet04
2018/03/21 03:40:36 network is up.
2018/03/21 03:40:36 Downloading https://storage.googleapis.com/go-builder-data/buildlet.linux-arm64 to ./buildlet.exe ...
2018/03/21 03:40:37 Downloaded ./buildlet.exe (7302642 bytes)
2018/03/21 03:40:37 buildlet starting.
2018/03/21 03:40:37 Dialing coordinator farmer.golang.org:443 ...
2018/03/21 03:40:37 Doing TLS handshake with coordinator (verifying hostname "farmer.golang.org")...
2018/03/21 03:40:38 Registering reverse mode with coordinator...
2018/03/21 03:40:38 Connected to coordinator; reverse dialing active
2018/03/21 08:37:19 buildlet reverse mode exiting.

buildlet reverse mode exiting is followed by os.Exit.
Trying to exec suggests Docker lost track of them.
root@go-builder:~# docker exec -it packet04 bash
rpc error: code = 2 desc = containerd: container not found

There is no spot-on Moby issue that matches this, but some similar ones over the last year. Upgrading and restarting Docker assuming it's a known issue. Will reopen if it keeps happening.

What's the current version of Docker and what are we upgrading to?


trigger build 041924

#599  👈
feature/proof-of-stake

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @lazynina and the rest of your teammates on  Graphite


Mono Icon stays dark in dark mode

The mono icon (a welcome addition) remains black in dark mode - it should revert to white at that point.
MacOS Big Sur 11.2RC1

Thanks for pointing this out - fixed in the latest commit. Interestingly, the color of the icons in the menu bar are not tied to light/dark mode, but rather to the color of the wallpaper. I tested with both light-colored and dark-colored backgrounds and got a white icon on dark and a black icon on light; let me know if you have different results.

Thanks for pointing this out - fixed in the latest commit. Interestingly, the color of the icons in the menu bar are not tied to light/dark mode, but rather to the color of the wallpaper. I tested with both light-colored and dark-colored backgrounds and got a white icon on dark and a black icon on light; let me know if you have different results.

Thanks. You're correct - it's the wallpaper, I realised this after submitting the issue and didn't correct it. But we got there in the end with it.

Thanks. You're correct - it's the wallpaper, I realised this after submitting the issue and didn't correct it. But we got there in the end with it.


servo-skia fails on windows-msvc with "failed to build archive: bad archive: permission denied"

error: failed to build archive: bad archive: permission denied

Build failed, waiting for other jobs to finish...
Build FAILED in 0:14:44
error: Could not compile `servo-skia`.

Haven't seen this for a long time.


Adds a new extension for Arduino devices to support creating variables of optional type

We are currently not considering modifying the blocks code to add support for creating variables of different types. This may break the compatibility between components and cause too much trouble for beginners.
We should create a extension to support the creation of different types of variables, such as numbers, characters, global variables, local variables, etc., and write corresponding building blocks that allow users to operate and call these variables.

This plan has been mentioned here: https://github.com/openblockcc/openblock-desktop/issues/45


Add azure environment to AML upgrade and uninstall

Resolves #3549
What is being addressed
Add missing azure_environment parameters to porter actions

/test-force-approve


Update CS cleanup with main changes

Merging current main onto candidate smasher cleanup branch

Too tedious, really just need to pull the changes to candidate smasher locally and start again in a new branch.


removing the authority tag?

The first block of a token is called the "authority block", and is used to define some rights and rules that will be used when validating other blocks. here is the process:

load facts and rules from the authority block
load ambient facts and rules from the verifier
test authority caveats and verifier caveats
take a snapshot of the current facts and rules
for each following block:

start from the snapshot
add the block's facts and rules
test the block caveats
test the verifier caveats

Facts from the authority block (either directly or generated from rules) start with the #authority symbol to differentiate them from facts generated in the other blocks. This was useful in earlier versions, where data generated in one block's validation could be carried over to the next block: we wanted to avoid accidentally increasing rights by adding more authority facts for the validation in the next blocks.
Since the validation of each block is independent from the other ones, a block adding a fact can only affect its own validation, so I do not think the authority tag is still needed. The only issue I would see is in verifier queries that would try to list the facts we can access, but since it would get the facts from each block then return their intersection, a block adding more facts would have no effect. For queries that return the union of results (like revocation ids), we would need to be more careful. Maybe we should mark separately "filter queries" and "aggregation queries"?
This can simplify Biscuit significantly:

no separation between block and authority caveats in the verifier
no separation between block and authority queries in the verifier (like getting revocation ids)
no need for separate add_authority_* methods at token creation
no more checks for the creation of authority facts in later blocks
most examples will look simpler without the authority symbol everywhere

Sounds like you've come full circle back to the Macaroons caveats model.

maybe. I could also go the other way and allow data to cross between blocks, which would allow a block requiring data coming from a later one, etc.

that could even be a bit simpler for the validation: load everything from every block, run the validation in one pass

ok so I tried both approaches in pull requests on the Rust version.
My feelings on those:

removing the authority tag: pretty printing of tokens is cleaner, and we could remove the distinction between authority and block facts and rules, which can be a bit confusing in the API. The change is mainly cosmetic though
merging blocks: the verifier API and behaviour get a lot simpler. Queries return data from the entire world, instead of per block. The data could even be printed and inspected after validation (so I could separate the queries from the validation phase). Some caveats that needed to differentiate between the authority block and the others are now simpler to write. It is now possible to write caveats that require later blocks to provide some facts (hello structural caveats and third party caveats!). It will require more care when writing rules though, to avoid elevating rights accidentally

In the end, merging blocks makes a nice API where queries can be separated from the caveats verification, and the generated facts can be inspected after running the caveats. I can also restart verification with different ambient data, which will help for further use cases.

merging blocks was added to the specification in db71970


fix(CI): properly configure cancel duplicates

SUMMARY
Updating the "Cancel Duplicates" job to use our own Python script, which will try to cancel all duplicate jobs of all workflows, which means:

For each workflow, we keep only the latest run for a given branch + event type (pull_request or push).
Older run will be cancelled even if they are already in running state

The benefit of using a custom Python script is that even if the cancel workflow is blocked be other long-running jobs scheduled before it, committers can still run the script locally to trigger the cancellation.
Tried to use https://github.com/potiuk/cancel-workflow-runs#most-often-used-canceling-example
but it's not very easy to configure.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
N/A
TEST PLAN
The job should start correctly and duplicate runs should be properly cancelled.
Tested on my personal fork.
Check https://github.com/ktmud/superset/actions?query=workflow%3A"Cancel+Duplicates" or verification.
ADDITIONAL INFORMATION

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

Codecov Report

Merging #12625 (816db71) into master (c14ed80) will decrease coverage by 3.55%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #12625      +/-   ##
==========================================
- Coverage   66.81%   63.25%   -3.56%
==========================================
  Files        1017      486     -531
  Lines       49734    29969   -19765
  Branches     4994        0    -4994
==========================================
- Hits        33229    18958   -14271
+ Misses      16382    11011    -5371
+ Partials      123        0     -123

Flag
Coverage Δ

cypress
?

javascript
?

python
63.25% <ø> (-0.74%)
:arrow_down:

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

Impacted Files
Coverage Δ

superset/sql_validators/postgres.py
50.00% <0.00%> (-50.00%)
:arrow_down:

superset/views/database/views.py
62.69% <0.00%> (-24.88%)
:arrow_down:

superset/db_engine_specs/sqlite.py
65.62% <0.00%> (-9.38%)
:arrow_down:

superset/db_engine_specs/presto.py
73.37% <0.00%> (-8.66%)
:arrow_down:

superset/databases/commands/create.py
83.67% <0.00%> (-8.17%)
:arrow_down:

superset/databases/commands/update.py
85.71% <0.00%> (-8.17%)
:arrow_down:

superset/sql_validators/base.py
93.33% <0.00%> (-6.67%)
:arrow_down:

superset/db_engine_specs/base.py
79.59% <0.00%> (-6.38%)
:arrow_down:

superset/views/database/forms.py
83.33% <0.00%> (-5.56%)
:arrow_down:

superset/databases/commands/test_connection.py
84.78% <0.00%> (-4.35%)
:arrow_down:

... and 549 more

Continue to review full report at Codecov.

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

Codecov Report

Merging #12625 (816db71) into master (c14ed80) will decrease coverage by 3.55%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #12625      +/-   ##
==========================================
- Coverage   66.81%   63.25%   -3.56%
==========================================
  Files        1017      486     -531
  Lines       49734    29969   -19765
  Branches     4994        0    -4994
==========================================
- Hits        33229    18958   -14271
+ Misses      16382    11011    -5371
+ Partials      123        0     -123

Flag
Coverage Δ

cypress
?

javascript
?

python
63.25% <ø> (-0.74%)
:arrow_down:

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

Impacted Files
Coverage Δ

superset/sql_validators/postgres.py
50.00% <0.00%> (-50.00%)
:arrow_down:

superset/views/database/views.py
62.69% <0.00%> (-24.88%)
:arrow_down:

superset/db_engine_specs/sqlite.py
65.62% <0.00%> (-9.38%)
:arrow_down:

superset/db_engine_specs/presto.py
73.37% <0.00%> (-8.66%)
:arrow_down:

superset/databases/commands/create.py
83.67% <0.00%> (-8.17%)
:arrow_down:

superset/databases/commands/update.py
85.71% <0.00%> (-8.17%)
:arrow_down:

superset/sql_validators/base.py
93.33% <0.00%> (-6.67%)
:arrow_down:

superset/db_engine_specs/base.py
79.59% <0.00%> (-6.38%)
:arrow_down:

superset/views/database/forms.py
83.33% <0.00%> (-5.56%)
:arrow_down:

superset/databases/commands/test_connection.py
84.78% <0.00%> (-4.35%)
:arrow_down:

... and 549 more

Continue to review full report at Codecov.

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

@potiuk, thanks for making the awesome cancel-workflow-runs GitHub action! Could you check here if I used your action correctly?
Much appreciated!

@potiuk, thanks for making the awesome cancel-workflow-runs GitHub action! Could you check here if I used your action correctly?
Much appreciated!

LGTM. I wish there was a way to avoid copying the action into the codebase

Submodules works great for it!

LGTM. I wish there was a way to avoid copying the action into the codebase

Submodules works great for it!

I choose 2 (periodical runs) instead of workflow_run -> requested event type as recommended by potiuk/cancel-workflow-runs's documentation because the cancel_duplicates jobs trigger this way are often put into the back of the workflow queue and therefore won't be able to execute before other jobs are finished anyway. By inserting the cancel job periodically to the queue, it may have a larger chance of being actually executed.

BTW. This is not necessarily true.  If you have a lot of jobs in the queue and EACH of the jobs triggers "cancel" on their own, you do not need to add schedule. Whenever any of the scheduled jobs gets in the queue it will cancel all runs. And if there are no jobs in the queue, then ..... you have nothing to cancel because there are no jobs in the queue. So those scheduled cancels will only increase number of jobs but IMHO they will not increase the chance of cancel step actually running.

I choose 2 (periodical runs) instead of workflow_run -> requested event type as recommended by potiuk/cancel-workflow-runs's documentation because the cancel_duplicates jobs trigger this way are often put into the back of the workflow queue and therefore won't be able to execute before other jobs are finished anyway. By inserting the cancel job periodically to the queue, it may have a larger chance of being actually executed.

BTW. This is not necessarily true.  If you have a lot of jobs in the queue and EACH of the jobs triggers "cancel" on their own, you do not need to add schedule. Whenever any of the scheduled jobs gets in the queue it will cancel all runs. And if there are no jobs in the queue, then ..... you have nothing to cancel because there are no jobs in the queue. So those scheduled cancels will only increase number of jobs but IMHO they will not increase the chance of cancel step actually running.

IMHO they will not increase the chance of cancel step actually running.

You are right. It's not like the scheduled run can insert in between the long list of checks once a PR is filed. I'll revise.

IMHO they will not increase the chance of cancel step actually running.

You are right. It's not like the scheduled run can insert in between the long list of checks once a PR is filed. I'll revise.

Thank

Thank

Hi

Hi

Hi

Hi

@potiuk, good to see you here! and thanks for cancel-workflow-runs

@potiuk, good to see you here! and thanks for cancel-workflow-runs

HOLD: current configuration seems to be only cancelling the Cancel Duplicates job itself: https://github.com/ktmud/superset/runs/1771801161?check_suite_focus=true

HOLD: current configuration seems to be only cancelling the Cancel Duplicates job itself: https://github.com/ktmud/superset/runs/1771801161?check_suite_focus=true

@potiuk , thanks for the additional information!
I decided to extend a previous Python script I wrote that was intended to use locally.
Now it's working properly: https://github.com/ktmud/superset/runs/1783573660?check_suite_focus=true
Also updated the PR description to include the intended effect.

@potiuk , thanks for the additional information!
I decided to extend a previous Python script I wrote that was intended to use locally.
Now it's working properly: https://github.com/ktmud/superset/runs/1783573660?check_suite_focus=true
Also updated the PR description to include the intended effect.

@villebro @amitmiran137 could you take another look on this one? I've completely changed how the jobs are cancelled. More details in PR description.

@villebro @amitmiran137 could you take another look on this one? I've completely changed how the jobs are cancelled. More details in PR description.

I just tested this
works amazing!

I just tested this
works amazing!

many thanks for improving the CI process!
cc  @guhan

many thanks for improving the CI process!
cc  @guhan


tweak iterator api to make it easier to add bidirectionality

This PR is prep work to add support for bidirectional iterators.  The PR does 2 things:

It renames some of the iterator functions to make them more direction-neutral.  For example, "advance" is renamed "next", so that we can add a "prev".  "at_end" is renamed "valid".

It changes which iterator operations can fail:  Now, only the "next" method can fail.  Getting the current key/value pair or checking "valid" cannot fail.  The rationale for this decision is: the fewer operations that can fail, the easier it is to use the iterator; in practice, all of the "valid" implementations never fail; "next" and "prev" can fail; if there is an implementation that can fail on "valid" checks, it is easy to move that failure to "next"/"prev" by performing the "valid" at the end of the "next"/"prev"; same for getting the current key/value pair.

From Alex: Add tests for empty iterators

Splinterdb stress test that ensures iterator next/prev work across multiple trunk leaves.


Issue with Can Bus Filter ID's

Thanks, Sandeep Mistry for the Library!
I need a little help with my Code.
I am working with an ESP32 and a TCAN334. We are facing issue with Filtering Ids. we are using the sample code provided with the library.
Without filter we are getting the data over can bus. But when we apply filters we did not receive any data.
we checked with the library, and ACR registers are correctly set.
We are trying filter with  0x18daf110 (Honda Jazz)

#include <CAN.h>

const bool useStandardAddressing = false;

void setup() {
  Serial.begin(9600);
  while (!Serial);

  Serial.println("CAN Receiver");

  // start the CAN bus at 500 kbps
  if (!CAN.begin(500E3)) {
    Serial.println("Starting CAN failed!");
    while (1);
  }

  if (useStandardAddressing) {
    CAN.filter(0x7E8);
  } else {

    CAN.filterExtended(0x18daf110  );

  }
}

void loop() {

  if (useStandardAddressing) {
    CAN.beginPacket(0x7DF, 8);
  } else {
    CAN.beginExtendedPacket(0x18db33f1, 8);
  }

  int packetSize = CAN.parsePacket();

  if (packetSize) {
    // received a packet
    Serial.print("Received ");

    if (CAN.packetExtended()) {
      Serial.print("extended ");
    }

    if (CAN.packetRtr()) {
      // Remote transmission request, packet contains no data
      Serial.print("RTR ");
    }
    Serial.print("packet with id 0x");
    Serial.print(CAN.packetId(), HEX);
    if (CAN.packetRtr()) {
      Serial.print(" and requested length ");
      Serial.println(CAN.packetDlc());
    } else {
      Serial.print(" and length ");
      Serial.println(packetSize);
      // only print packet data for non-RTR packets
      while (CAN.available()) {
        Serial.print((char)CAN.read(), HEX);
      }
      Serial.println();
    }
    Serial.println();

  }

maybe someone can help me out.

What happens when you Software Filter it? like:
if ((CAN.packetId() == 0x18daf110)
{
while (CAN.available()) {
Serial.print((char)CAN.read(), HEX);
}

thank you with your lib
I have a problem with mask and filtering I wanna receive one of the id's in can bus
Sensor_ID_in_DEC = (CAN.packetId());
CAN.filter(Sensor_ID_in_DEC, Sensor_ID_in_DEC);
is it the right thing to do
of course not cuz it's not working
(is there any example to just receive a specific id  )
or anyone can help me with this ill appreciate it
thankyou

@mehrdad987
You read the bus and save the Vaiable to then filter it? - this not the right way.
"Sensor_ID_in_DEC = (CAN.packetId());"

Filter like this:
CAN.filter(0x7E8);
You will ONLY recive  the given ID, in this case 0x7E8.
This is how it works. if you want multiple or a Range you need to make it in software like in my post above

yep
but it's not working I have many ids in can bus and I wanna receive one of them
and if I USE CAN.filter(0xCFF001); it ll receive nothing so I am using if in bellow
if (CAN.packetId() == 0xCFF001){
  while (CAN.available()) {
    int b1 = CAN.available();
    byte buff[8];
    CAN.readBytes((char *)buff,8);

and also it's not good cuz its find the id randomly

dont use the can.avalable it is too slow.
also do this in the reciver callback. it is mutch faster and filters all ids that you want!

also may consider this comit:
https://github.com/sandeepmistry/arduino-CAN/pull/27
for direct access of the Raw Can buffer.

YOU MEAN THIS virtual void onReceive(void(*callback)(int));
actually I'm a beginner and I don't know how to use it
if it's possible to make an example<>ill appreciate it

Try this:
But user the Lib for Raw buffer access:
https://github.com/sandeepmistry/arduino-CAN/pull/27
`
//Globals
#include <CAN.h>
uint8_t CanB[8];
int byte1;
int byte2;
int byte3;
int byte4;
int byte5;
int byte6;
int byte7;
int byte8;
void setup() {
CAN.begin(500E3); //Baud Rate
CAN.onReceive(onReceive); //Calback
}
void loop() {
//Print packet
Serial.println(byte1);
Serial.println(byte2);
Serial.println(byte3);
Serial.println(byte4);
Serial.println(byte5);
Serial.println(byte6);
Serial.println(byte7);
Serial.println(byte8);
}
void onReceive(int packetSize) {
CAN.readBytes(CanB, 8); // CanB is the Name of the Buffer
if (CAN.packetId() == 0x220)
{
byte1 = CanB[0];
byte2 = CanB[1];
byte3 = CanB[2];
byte4 = CanB[3];
byte5 = CanB[4];
byte6 = CanB[5];
byte7 = CanB[6];
byte8 = CanB[7];

}
}
`

Hi, I'm a newbie in programming and Arduino, sorry for the dumb questions below! :
Taking a look at the last code, I see that CAN.onReceive(onReceive)  is a replacement to CAN.parsePacket() and CAN.available to receive CAN packets in order to get good filtering capabilities. But CAN.onReceive is only executed once because it's in the void setup() function.
Does this mean that only one packet will be captured during program execution? If not, how is it possible that void onReceive(int packetSize) is called multiple times if it's not called out from the void loop () function?
Also, If I'd like to filter the data buffer  (ID=0x206, byte1=01 byte2=84 byte3=00 byte4,5,6,7,8=00), would it be fine if I used an IF statement inside the void loop()...or should it be inside the void onReceive(int packetSize) function?
For instance, what I'd do is:
void(loop){

   if(byte1==0x01 && byte2==0x84 && byte3==0x00){
   // actions here (send media commands over bluetooth)

}

Thanks in advance

@zalexzperez CAN.onReceive(xyz) sets up xyz as a callback. It should be called for every message received.
If you want to filter packets by data, you probably want to do it in the callback function, not the loop() function.

I encountered a problem where ESP32 would freeze when using extended ID for communication.
The freeze usually happened after 5 to 40 minutes, and it was difficult to identify the cause.
Therefore, I attempted to implement filtering by ID to improve stability, but I got a runtime error.
Thus, I made the modifications according to #117 , which fixed the freezing issue simultaneously.
I believe that the PR of #117  will be the solution to this issue.
Bests,

Fixed by #117.


integration with nb + proper errors

@homunkulus r+

:pushpin: Commit 92db662 has been approved by japaric

:hourglass: Testing commit 92db662 with merge 92db662...

:broken_heart: Test failed - status-travis

@homunkulus r+

:pushpin: Commit 4e8dad9 has been approved by japaric

:hourglass: Testing commit 4e8dad9 with merge 4e8dad9...


Current package directory guidance doesn't give the exception for opensource project header file to stay out of package's Include directory (Bugzilla Bug 3133)

This issue was created automatically with bugzilla2github
Bugzilla Bug 3133
Date: 2020-12-21T10:02:48+00:00
From: @changab
To:   @lgao4
CC:   @lgao4
Last updated: 2020-12-21T21:01:44+00:00

Comment 14636
Date: 2020-12-21 20:54:53 +0000
From: @lgao4
Here is edk2 module write guide doc git https://github.com/tianocore-docs/edk2-ModuleWriteGuide. It can be updated.

Comment 14633
Date: 2020-12-21 10:02:48 +0000
From: @changab

Industry Specification: ---
Release Observed: EDK II Master
Releases to Fix: EDK II Master
Target OS: ---
Bugzilla Assignee(s): @lgao4

In EDKII module writer's guide section 2.1.2, it says "The include directory contains all public header files that are exposed by this package and are used by this package and other packages". However, the opensource project header files are not under package's Include directory and the header file may be referred by the modules which are (or not) in the same package as the external opensource module. This violates the guidance in section 2.1.2. We should make the exception for the opensource library use case.

Comment 14643
Date: 2020-12-21 21:01:44 +0000
From: @lgao4
Liming takes it.

Comment 14637
Date: 2020-12-21 20:55:22 +0000
From: @lgao4
Here is edk2 module write guide doc git https://github.com/tianocore-docs/edk2-ModuleWriteGuide. It can be updated.


Remove the now-redundant thrifty-runtime-ktx

Codecov Report

Merging #397 into master will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master     #397   +/-   ##
=========================================
  Coverage     61.37%   61.37%
  Complexity     1043     1043
=========================================
  Files            84       84
  Lines          6710     6710
  Branches       1011     1011
=========================================
  Hits           4118     4118
  Misses         2251     2251
  Partials        341      341

Continue to review full report at Codecov.

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


Update emcee usage to avoid deprecation warnings

Update several emcee calls that have been deprecated.

 It turns out that emcee dropped the PTSampler code several years ago, so it doesn't work at all. Seeing as nobody ever commented about this, I don't think that anybody is using the PTSampler. I think that we should drop support for the PTSampler altogether. I kept the "sampler" argument to mcmc_lc for API compatibility, but it only supports ensemble now.

I added some tests for mcmc_lc since it wasn't being tested previously.

@benjaminrose Could you take a quick look at this before I merge it?

We should update the dependencies to indicate that we no longer work with emcee v2.*. And I assume you want to add an option for the other moves later?

I updated the minimum supported emcee version in setup.cfg. For now, let's just support the emcee default sampler. If somebody asks for it in the future we can add other moves.


Allow user to turn off bitcoin chains

Do not allow to toggle bitcoin mainnet
Allow user toggle bitcoin testnet (bitcoin testnet is disabled by default)

Version test : http://<IP_ADDRESS>:8900/s/tkH4isbmSTJWe4f
Validation passed in case :

Install version

ON/OFF network

When ON/OFF network and then click Reset account/Eraser all


Treesitter CSS highlighing won't work

This is if I use the 'new-improvements' branch.

This is from the current branch.

If I do :TSDisable highlight this is what it turns into.
I have highlight = { enable = true} in my Treesitter config and the rest of the languages I have install work correctly except CSS. I tried to replicate it with Catppuccin, but that theme was working fine.

@IzzyDLP  The new-improvements branch is 75 commits behind main, so it likely doesn't have the new treesitter highlight groups. That is to say new-improvements are probably not that new anymore.
@Mofiqul Maybe that branch should just be nuked from orbit?

@FredeEB - yah i will do that

@IzzyDLP The new-improvements branch is 75 commits behind main, so it likely doesn't have the new treesitter highlight groups. That is to say new-improvements are probably not that new anymore.
@Mofiqul Maybe that branch should just be nuked from orbit?

Yeah i saw that it was behind a bit, but I tried it anyway so I figure I'd add that info in.

`
coc: health#coc#check

OK: nvim version satisfied
OK: Environment check passed
OK: Javascript bundle build/index.js found
OK: Service started

crates: require("crates.health").check()
Checking for required plugins

OK: plenary.nvim installed
OK: null-ls.nvim installed

Checking for external dependencies

OK: curl installed
OK: xdg-open installed

man: require("man.health").check()

OK: plugin/man.vim not in $VIMRUNTIME
OK: autoload/man.vim not in $VIMRUNTIME

null-ls: require("null-ls.health").check()

INFO: no sources registered

nvim: health#nvim#check
Configuration

OK: no issues found

Performance

OK: Build type: RelWithDebInfo

Remote Plugins

OK: Up to date

terminal

INFO: key_backspace (kbs) terminfo entry: key_backspace=\177
INFO: key_dc (kdch1) terminfo entry: key_dc=\E[3~
INFO: $COLORTERM='truecolor'

nvim-treesitter: require("nvim-treesitter.health").check()
Installation

OK: tree-sitter found 0.20.7 (b268e412ad4848380166af153300464e5a1cf83f) (parser generator, only needed for :TSInstallFromGrammar)
OK: node found v18.12.1 (only needed for :TSInstallFromGrammar)
OK: git executable found.
OK: cc executable found. Selected from { vim.NIL, "cc", "gcc", "clang", "cl", "zig" }
Version: cc (Ubuntu 11.3.0-1ubuntu1~22.04) 11.3.0
OK: Neovim was compiled with tree-sitter runtime ABI version 14 (required >=13). Parsers must be compatible with runtime ABI.

OS Info:
{
machine = "x86_64",
release = "6.0.6-76060006-generic",
sysname = "Linux",
version = "#202210290932~1669062050~22.04~d94609a SMP PREEMPT_DYNAMIC Mon N"
}
Parser/Features H L F I J

json           ✓ ✓ ✓ ✓ .
javascript     ✓ ✓ ✓ ✓ ✓
lua            ✓ ✓ ✓ ✓ ✓
make           ✓ . ✓ . ✓
ruby           ✓ ✓ ✓ ✓ ✓
rust           ✓ ✓ ✓ ✓ ✓
c              ✓ ✓ ✓ ✓ ✓
markdown       ✓ . ✓ . ✓
html           ✓ ✓ ✓ ✓ ✓
c_sharp        ✓ ✓ ✓ . ✓
tsx            ✓ ✓ ✓ ✓ ✓
help           ✓ . . . ✓
cpp            ✓ ✓ ✓ ✓ ✓
typescript     ✓ ✓ ✓ ✓ ✓
vim            ✓ ✓ ✓ . ✓
yaml           ✓ ✓ ✓ ✓ ✓
python         ✓ ✓ ✓ ✓ ✓
bash           ✓ ✓ ✓ . ✓
cmake          ✓ . ✓ . .
css            ✓ . ✓ ✓ ✓

Legend: H[ighlight], L[ocals], F[olds], I[ndents], In[j]ections
+) multiple parsers found, only one will be used
x) errors found in the query, try to run :TSUpdate {lang}
provider: health#provider#check
Clipboard (optional)

OK: Clipboard tool found: xclip

Python 3 provider (optional)

INFO: g:python3_host_prog is not set.  Searching for python3 in the environment.
INFO: Executable: /bin/python3
INFO: Python version: 3.10.6
INFO: pynvim version: 0.4.3
OK: Latest pynvim is installed.

Python virtualenv

OK: no $VIRTUAL_ENV

Ruby provider (optional)

INFO: Ruby: ruby 3.0.2p107 (2021-07-07 revision 0db68f0233) [x86_64-linux-gnu]
INFO: Host: /usr/local/bin/neovim-ruby-host
OK: Latest "neovim" gem is installed: 0.9.0

Node.js provider (optional)

INFO: Node.js: v18.12.1
INFO: Nvim node.js host: /home/izzyd/.npm-global/lib/node_modules/neovim/bin/cli.js
OK: Latest "neovim" npm/yarn/pnpm package is installed: 4.10.1

Perl provider (optional)

INFO: Disabled (g:loaded_perl_provider=0).

telescope: require("telescope.health").check()
Checking for required plugins

OK: plenary installed.
OK: nvim-treesitter installed.

Checking external dependencies

OK: rg: found ripgrep 13.0.0
OK: fd: found fd 8.3.1

===== Installed extensions =====
Telescope Extension: fzf

OK: lib working as expected
OK: file_sorter correctly configured
OK: generic_sorter correctly configured

vim.lsp: require("vim.lsp.health").check()

INFO: LSP log level : WARN
INFO: Log path: /home/izzyd/.local/state/nvim/lsp.log
INFO: Log size: 49 KB

vim.treesitter: require("vim.treesitter.health").check()

INFO: Runtime ABI version : 14
OK: Loaded parser for bash: ABI version 14
OK: Loaded parser for c: ABI version 13
OK: Loaded parser for c_sharp: ABI version 13
OK: Loaded parser for cmake: ABI version 14
OK: Loaded parser for cpp: ABI version 14
OK: Loaded parser for css: ABI version 13
OK: Loaded parser for help: ABI version 14
OK: Loaded parser for html: ABI version 13
OK: Loaded parser for javascript: ABI version 14
OK: Loaded parser for json: ABI version 13
OK: Loaded parser for lua: ABI version 13
OK: Loaded parser for make: ABI version 13
OK: Loaded parser for markdown: ABI version 13
OK: Loaded parser for python: ABI version 14
OK: Loaded parser for ruby: ABI version 13
OK: Loaded parser for rust: ABI version 14
OK: Loaded parser for tsx: ABI version 14
OK: Loaded parser for typescript: ABI version 14
OK: Loaded parser for vim: ABI version 14
OK: Loaded parser for yaml: ABI version 13
OK: Loaded parser for c: ABI version 13
OK: Loaded parser for help: ABI version 14
OK: Loaded parser for lua: ABI version 13
OK: Loaded parser for vim: ABI version 14
`

That all looks fine.
The first picture from your issue looks like the default highlighting with Dracula without treesitter and the last one looks like Dracula with treesitter. So I'm not sure I understand your issue

I can confirm having the same issue: css is highlighting seem broken when using Treesitter
With Treesitter:

Without Treesitter:

My dotfiles: https://github.com/Drowze/dotfiles/tree/master/.config/nvim


Dramatic drop in performance after upgrade to phantom-cluster

Been running pre-phantom-cluster version for a good month with an issue and decided to check out the new version after @dailymuse's merge. Performance dropped significantly:

Seeing a lot of 504 errors. Any ideas what's happening?

I had a similar issue. I was able to get rid of the 504 errors by updating prerender and re-instaling node packages with these commands:
cd /path/to/prerender
git pull
rm -rf node_modules
npm install
node server.js


pyenv has multiple entries, which wraps to next line in spaceship

In pyenv, you can set any number of local versions:
$ pyenv local 3.5 3.6

My pyenv local:
➜ pyenv local
3.6.0b3
3.5.2
system

My prompt:
~/projects/cib on  master [!] on 🐳  v17.04.0-ce via 🐍  3.6.0b3
3.5.2
system
➜

@SanketDG yeah, looks shitty. Should be fixed.

A simple fix should just be:
pyenv_status=$(echo "$pyenv_status" | tr '\n' ' ')

@SanketDG what about pyenv version-name? Does it works for global version too or just for local?
Using version-name seems more semantically correct than using kind of tricks.

Yup, looks good to me :+1:

@SanketDG could you, please, send a PR?


OWL2SPARQL converter fixes

This PR fixes some issues in the owl2sparql mapping

the forAll operator (\forAll r.C)  now returns entities that do not have any pairs in the provided relationship
fix in the negation
cardinality restrictions (e.g., >= 2 r.C): for the <= operator the mapping now also returns entities that do not have any pairs in the provided relation (there are still some issues when the provided cardinality is 0 that need to be investigated)

This PR also introduces more test cases, comments and an option to restrict the entities returned by the query to be instances of owl:NamedIndividual

I found an error at the conversion
Given a concept as such,
OWLObjectIntersectionOf((OWLObjectUnionOf((OWLClass(IRI('http://www.benchmark.org/family#','Mother')), OWLClass(IRI('http://www.benchmark.org/family#','Mother')))), OWLObjectIntersectionOf((OWLClass(IRI('http://www.benchmark.org/family#','Mother')), OWLClass(IRI('http://www.benchmark.org/family#','Mother'))))))
Traceback (most recent call last):
    ....
    return self.converter.as_query("?var", c, False)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 467, in as_query
    tp = self.convert(root_variable, ce)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 104, in convert
    self.process(ce)
  File "/home/demir/anaconda3/envs/nrw/lib/python3.9/functools.py", line 938, in _method
    return method.__get__(obj, cls)(*args, **kwargs)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 206, in _
    self.append(f"FILTER ( {v0} != {v1} )")
  File "/home/demir/anaconda3/envs/nrw/lib/python3.9/contextlib.py", line 126, in __exit__
    next(self.gen)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 161, in intersection
    del self._intersection[self.modal_depth]
KeyError: 1

Do you have an idea @nkaralis @alkidbaci @SimonBin  :) ?

I found an error at the conversion
Given a concept as such, OWLObjectIntersectionOf((OWLObjectUnionOf((OWLClass(IRI('http://www.benchmark.org/family#','Mother')), OWLClass(IRI('http://www.benchmark.org/family#','Mother')))), OWLObjectIntersectionOf((OWLClass(IRI('http://www.benchmark.org/family#','Mother')), OWLClass(IRI('http://www.benchmark.org/family#','Mother'))))))
Traceback (most recent call last):
    ....
    return self.converter.as_query("?var", c, False)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 467, in as_query
    tp = self.convert(root_variable, ce)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 104, in convert
    self.process(ce)
  File "/home/demir/anaconda3/envs/nrw/lib/python3.9/functools.py", line 938, in _method
    return method.__get__(obj, cls)(*args, **kwargs)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 206, in _
    self.append(f"FILTER ( {v0} != {v1} )")
  File "/home/demir/anaconda3/envs/nrw/lib/python3.9/contextlib.py", line 126, in __exit__
    next(self.gen)
  File "/home/demir/Desktop/Softwares/NRW/owlapy/owl2sparql/converter.py", line 161, in intersection
    del self._intersection[self.modal_depth]
KeyError: 1

Do you have an idea @nkaralis @alkidbaci @SimonBin :) ?

Generated by the new code is the following:
SELECT
 DISTINCT ?x WHERE {
?x <http://dl-learner.org/carcinogenesis#hasBond> ?s_1 .
{
{ SELECT ?s_1 WHERE {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_2 .
 } GROUP BY ?s_1 HAVING ( COUNT ( ?s_2 ) <= 4 ) }
} UNION {
?s_1 ?s_3 ?s_4 .
FILTER NOT EXISTS {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_5 .
 } }
{ SELECT ?s_1 WHERE {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_6 .
 } GROUP BY ?s_1 HAVING ( COUNT ( ?s_6 ) >= 1 ) }
 }

Generated by the previous code:
 SELECT
 DISTINCT ?x WHERE {
?x <http://dl-learner.org/carcinogenesis#hasBond> ?s_1 .
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_2 .
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_3 .
 }
GROUP BY ?x
 HAVING (
COUNT ( ?s_2 ) <= 4 && COUNT ( ?s_3 ) >= 1
 )

Can you please confirm which is correct for the given concept:
prop_s = OWLObjectProperty(IRI.create("http://dl-learner.org/carcinogenesis#hasBond"))
        ce = OWLObjectSomeValuesFrom(
            prop_s,
            OWLObjectIntersectionOf((
                OWLObjectMaxCardinality(
                    4,
                    OWLObjectProperty(IRI.create("http://dl-learner.org/carcinogenesis#hasAtom")),
                    OWLThing
                ),
                OWLObjectMinCardinality(
                    1,
                    OWLObjectProperty(IRI.create("http://dl-learner.org/carcinogenesis#hasAtom")),
                    OWLThing
                )
            ))
        )

SPARQL query using the new code is as follows:
SELECT
 DISTINCT ?x WHERE {
?x <http://dl-learner.org/carcinogenesis#hasBond> ?s_1 .
{
{ SELECT ?s_1 WHERE {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_2 .
 } GROUP BY ?s_1 HAVING ( COUNT ( ?s_2 ) <= 4 ) }
} UNION {
?s_1 ?s_3 ?s_4 .
FILTER NOT EXISTS {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_5 .
 } }
{ SELECT ?s_1 WHERE {
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_6 .
 } GROUP BY ?s_1 HAVING ( COUNT ( ?s_6 ) >= 1 ) }
 }

the query using the old code:
SELECT
 DISTINCT ?x WHERE {
?x <http://dl-learner.org/carcinogenesis#hasBond> ?s_1 .
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_2 .
?s_1 <http://dl-learner.org/carcinogenesis#hasAtom> ?s_3 .
 }
GROUP BY ?x
 HAVING (
COUNT ( ?s_2 ) <= 4 && COUNT ( ?s_3 ) >= 1
 )

I believe it's the updated one. The && operation is now a join based on the results returned by the subqueries. In the updated version, we also consider for the <= case the entities that have no atoms using the filter not exists in one of the union components.
My focus was mostly on ALC, so please, correct me if i am wrong.


Need to deal with line endings

Hey there! You might want to add a step in your README to handle Windows messing with line endings (for instance if you open with VS Code in WIndows). Something like this will do the trick
 find src/ -type f -print0 | xargs -P 4 -0 -n 1  dos2unix

Hey @isaacrlevin , thank you very much for your contribution here. I've been having this issue myself and will add this to the steps in the README file. I hope I can figure out a way of ending this without having go to through this step.


[DEVEX-882]: added support to check if the Journey is displaying

Added isJourneyDisplaying() method to check anytime if any Journey is displaying or not.
Added the test for the same also.

Reviewers:
@rubinsingh @Sarkar

Closing PR because partner can use Journey event listeners to achieve use-case.


Add a feature which can show projector when a creative mode player holds the projector item.

This PR solve https://github.com/teaconmc/SlideShow/issues/4.
Comparing to https://github.com/teaconmc/SlideShow/pull/6, this solution doesn't need any dummy entity.
Before:

After:

那么问题出现了，GH-6 和 GH-7 之间只能选一个，选哪个？

Donk

I don’t think it will cause render performance issues. People will not hold the block too long.
But, Indeed there is a better way to achieve it. However, I need to do more tests.
On Oct 24, 2020, 15:24 +0800, Seraph_JACK<EMAIL_ADDRESS>wrote:

@SeraphJACK commented on this pull request.
In src/main/java/org/teacon/slides/render/ProjectorWorldRender.java:

   World world = player.getEntityWorld();

   matrixStack.push();

   Vec3d projectedView = Minecraft.getInstance().gameRenderer.getActiveRenderInfo().getProjectedView();

   matrixStack.translate(-projectedView.x, -projectedView.y, -projectedView.z); // In default situation, the original position of matrix in world origin point. We should translate it.

   Matrix4f matrix = matrixStack.getLast().getMatrix();

   BlockPos.Mutable pos = new BlockPos.Mutable();

   for (int dx = -10; dx <= 10; dx++) {

       for (int dy = -10; dy <= 10; dy++) {

           for (int dz = -10; dz <= 10; dz++) {

               pos.setPos(px + dx, py + dy, pz + dz);

               //Check ProjectorTileEntity

               if (world.getTileEntity(pos) != null && world.getTileEntity(pos).getType() == ProjectorTileEntity.theType) {

Won't this cause render performance issues? I think @ustc-zzzz 's solution is more efficient.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Merged to 1.15-forge branch manually.


Sync up remaining updated execs and exprs from rapids-plugin

Fixes https://github.com/NVIDIA/spark-rapids-tools/issues/601
We synced up the tools side with the remaining execs and exprs recently updated in the rapids-plugin side.

This should be the source of truth for operators that we support and want to generate speedup factors for: https://github.com/NVIDIA/spark-rapids-tools/blob/dev/user_tools/custom_speedup_factors/operatorsList.csv

This should be the source of truth for operators that we support and want to generate speedup factors for: https://github.com/NVIDIA/spark-rapids-tools/blob/dev/user_tools/custom_speedup_factors/operatorsList.csv

Thanks @mattahrens ! Currently I see https://github.com/NVIDIA/spark-rapids-tools/blob/dev/core/src/main/resources/operatorsScore.csv (even without the ML ops) has more rows than https://github.com/NVIDIA/spark-rapids-tools/blob/dev/user_tools/custom_speedup_factors/operatorsList.csv. Shall we match the two files, or is this expected?

This should be the source of truth for operators that we support and want to generate speedup factors for: https://github.com/NVIDIA/spark-rapids-tools/blob/dev/user_tools/custom_speedup_factors/operatorsList.csv

Thanks @mattahrens ! Currently I see https://github.com/NVIDIA/spark-rapids-tools/blob/dev/core/src/main/resources/operatorsScore.csv (even without the ML ops) has more rows than https://github.com/NVIDIA/spark-rapids-tools/blob/dev/user_tools/custom_speedup_factors/operatorsList.csv. Shall we match the two files, or is this expected?

Great question.  The operatorsList.csv is intentionally smaller as I have removed execs/expressions where we do not want the environment default speedup factor (e.g. 3.2 or 4.5) to be used but we want it to be defaulted to 1.0 given that speedup is not expected for that operator.  So for any new supported operations, we'd want to make sure speedup is expected before adding to operatorsList.csv; I would guess that the majority of new operations should be added to operatorsList.csv.

Great question. The operatorsList.csv is intentionally smaller as I have removed execs/expressions where we do not want the environment default speedup factor (e.g. 3.2 or 4.5) to be used but we want it to be defaulted to 1.0 given that speedup is not expected for that operator. So for any new supported operations, we'd want to make sure speedup is expected before adding to operatorsList.csv; I would guess that the majority of new operations should be added to operatorsList.csv.

Understood. Thanks!

I removed the ML-function speedups from operatorsScore-dataproc-serverless-l4.csv since the numbers were not part of the benchmark. This conversation was in thread: https://github.com/NVIDIA/spark-rapids-tools/pull/509#pullrequestreview-1598479386. Thanks!


New revision isn't actually deployed

The github action reports success however when I go to cloud run revision console it shows the latest deployed revision was from a week ago even though the github action ran today. The only way I can get the GH action to work again is to manually deploy a new revision from Cloud Run UI and then run the GH action again. That will work. However then any subsequent GH action won't result in new revision being deployment.
I highly suspect the logic with revision naming is causing issues. This might be the code that's causing the behaviour: https://github.com/google-github-actions/deploy-cloudrun/blob/main/src/cloudRun.ts#L194
This is the GH action example where it reported success but didn't actually deploy a new revision: https://github.com/websu-io/websu/runs/1693522408?check_suite_focus=true
Happy to show it through screenshare as well

Thanks for submitting, this looks similar to issue #12.

Thanks for submitting, this looks similar to issue #12.

How can I easily try out your pull request to verify that it fixes the issue?

How can I easily try out your pull request to verify that it fixes the issue?

How can I easily try out your pull request to verify that it fixes the issue?

That can be a little complicated with the repo setup. The PR doesn't include the compiled code - that gets built on PR merge. I did add tests for the use case to ensure revisions are being created.
However, I pushed a branch with the compiled code which can be referenced in your workflow:
uses: google-github-actions/deploy-cloudrun@revision-test

Let me know if you have any issues.

How can I easily try out your pull request to verify that it fixes the issue?

That can be a little complicated with the repo setup. The PR doesn't include the compiled code - that gets built on PR merge. I did add tests for the use case to ensure revisions are being created.
However, I pushed a branch with the compiled code which can be referenced in your workflow:
uses: google-github-actions/deploy-cloudrun@revision-test

Let me know if you have any issues.

Now available in v0.3.0.

Now available in v0.3.0.


disable site

Hi,
I see the status flag inside sites.json (default 'Active) but cannot see how this is used and where it's checked. Is there a way to temporary disable a site?

There is not a way to do this from the app.  You can rename the sites public folder (e.g. public/sites/mysite-disabled). That would essentially disable it temporarily.


High CPU usage with rs2::pipeline

Required Info

Camera Model
D435

Firmware Version
<IP_ADDRESS>

Operating System & Version
Win 10

Platform
PC

SDK Version
2.13.0

Language
C++

Segment
Biometrics

Issue Description
On a 8 core box, the following code seems to be using 100% CPU across all the cores.
int main(int argc, char * argv[]) try
{
    // Declare depth colorizer for pretty visualization of depth data
    rs2::colorizer color_map;

    //Create a configuration for configuring the pipeline with a non default profile
    rs2::config cfg;

    //Add desired streams to configuration
    cfg.enable_stream(RS2_STREAM_COLOR, 1920, 1080, RS2_FORMAT_BGR8, 30);

    // Declare RealSense pipeline, encapsulating the actual device and sensors
    rs2::pipeline pipe;
    // Start streaming with default recommended configuration
    pipe.start(cfg);

    while (waitKey(10))
    {
        auto frameset = pipe.wait_for_frames(); // Wait for next set of frames from the camera
        auto frame = color_map(frameset.get_color_frame());

        // Query frame size (width and height)
        const int w = frame.as<rs2::video_frame>().get_width();
        const int h = frame.as<rs2::video_frame>().get_height();
    }

    return EXIT_SUCCESS;
}

Apparently this is caused by
    rs2::pipeline pipe;
    // Start streaming with default recommended configuration
    pipe.start();

When pipe.start() is commented out, the CPU usage falls below 20% (even that's high, but we can come to that at a later stage).

Hi @carun
Are you building the SDK from source?
If yes, what is the value of CMake flag BUILD_WITH_OPENMP?

Hi @dorodnic
I didn't build the SDK from source. I'm using the one from GitHub releases.

Intel Realsense Viewer seems to use less than 15% of CPU across the cores.

Thank you, we will look into it.

I can confirm that the pre-compiled version was (unintentionally) built with BUILD_WITH_OPENMP=true. Going to be fixed in the upcoming release. Thank you for feedback

Thanks, do you know which version this issue was introduced so that I can use the older version for my testing?

This issue is persistent since the initial version of the SDK 2.0.

CPU usage is less than 15% when with a custom build.
cmake -G "Visual Studio 15 2017 Win64" -DCMAKE_BUILD_TYPE=Release ..
cmake --build . --config Release

[Realsense Customer Engineering Team Comment]
@carun
Yes, just like dorodnic said, librealsense.dll consumes as much CPU resource as possible if the BUILD_WITH_OPENMP is turned on while building the binary. the pre-built binary is with BUILD_WITH_OPENMP turned on so that's why you see the high CPU rate issue. But when you build the binary by yourself, the default CMake file config for BUILD_WITH_OPENMP is OFF, so with this binary, you won't see the high CPU rate issue.

We are working on new installer right now with BUILD_WITH_OPENMP off.

[Realsense Customer Engineering Team Comment]
@carun
Do you still have any other question? can I close the ticket?

@RealSense-Customer-Engineering Thanks for your help.

Hi @dorodnic, we are also facing the same issue with the latest SDK as well as source code built with OPENMP off scenario while polling color info with multiple D435 cameras connected. Is there any solution for this problem? Please let us know


custom top title

its possible create top title  something like this? without arrows and put the months instead?

I haved to use 3 textview in a relativelayout, with thes months values and id prev, current and next, in the onclick of prev and next textviews dispatch method materialCalendarView.goNext or materialCalendarView.goPrev() and the listener setOnMonthChangedListener i put method to change text of textviews, oh and the materialCalendarView setTopbarVisible in false


MenuBar : [Vue warn]: Hydration attribute mismatch on primevue: "^3.51.0"

dependencies:
"primevue": "^3.51.0"
"nuxt-primevue": "^0.3.1"
There is warning in dev console using Prime Menu Bar
[Vue warn]: Hydration attribute mismatch on <li id="pv_id_4_0" style class="sm:relative sm:w-auto w-full static" role="menuitem" aria-label="Home" aria-level="1" aria-setsize="5" aria-posinset="1" data-pc-section="menuitem" data-p-highlight="false" data-p-focused="false">…

rendered on server: id="pv_id_4_0"
expected on client: id="pv_id_1_0"
Note: this mismatch is check-only. The DOM will not be rectified in production due to performance overhead.
You should fix the source of the mismatch.
at <MenubarSub ref=fn id="pv_id_1" role="menubar"  ... >
at <Menubar model= (5) [{…}, {…}, {…}, {…}, {…}] >
at
at <Default ref=Ref< undefined > >
at <LayoutLoader key="default" layoutProps= {ref: RefImpl} name="default" >
at <NuxtLayoutProvider layoutProps= {ref: RefImpl} key="default" name="default"  ... >
at
at
at

Works with rollback to version
"primevue": "3.49.1",
"nuxt-primevue": "^0.3.1"

There's a PR on the primevue repo that is supposed to fix it, but I haven't been able to test it personally https://github.com/primefaces/primevue/pull/5567

Yeah, unfortunately it's from MR https://github.com/primefaces/primevue/pull/5486
https://github.com/primefaces/primevue/pull/5567 should revert it for SSR

Hi, If the issue continues with the latest version, please re-open the issue. I believe there was a fix from primevue core repo

thanks @atakantepe
it's solved with "primevue": "^3.52.0"


Refactor

This is a refactor intended to get us to a major release with some stability.

You are correct, my bad! I didn't get a chance today but will fix tomorrow

Hey Micol, can you take a look at how the face launch is done? I was having trouble with launching the dialog. I think most of the PC is now correctly merged in but I wasn't quite able to complete the dialog tests. And could you take a start at documenting what each of the launch parameters are for? (pattern name, test, test input, test id) the names don't quite describe the function

@micolspitale93 if this is working we should merge it so that the autobuild revision can be pulled in also.


Add updates for invoice status history and project next steps

Fixes #3558
Invoice status history section:

'Next steps' to 'Waiting for'/'To do'

@frjo can we please put its latest version to the test?

@frjo Its latest version is ready for testing.

Deploying to test now.


why use 'return' in here?

https://github.com/koajs/koa/blob/148f26f630f8588b20e731ab348b54791652a15b/lib/application.js#L150

Because it's a promise. Even though Koa isn't necessarily doing anything with the return, anyone consuming Koa directly e.g. through Application.callback can.


Where to get CoreUtils, LoadersVolume, HelpersStack, HelpersLut, CamerasOrthographic, ControlsOrthographic file for ami Medical Image Viewer

Hello Developers/Friends,
I am unable to get the CoreUtils, LoadersVolume, HelpersStack, HelpersLut, CamerasOrthographic, ControlsOrthographic library file for ami Medical Image Viewer files.
This file is used in ami\examples\viewers_upload\viewers_upload.js
LINES in CODE:
import CoreUtils from 'base/core/core.utils';
import LoadersVolume from 'base/loaders/loaders.volume';
import HelpersStack from 'base/helpers/helpers.stack';
import HelpersLut from 'base/helpers/helpers.lut';
import CamerasOrthographic from 'base/cameras/cameras.orthographic';
import ControlsOrthographic from 'base/controls/controls.trackballortho';
Unable to get these modules due to which my image uploader is not working. Please guide me how to get these modules.

You can do like this:
import CoreUtils from 'ami.js/src/core/core.utils';
import LoadersVolume from 'ami.js/src/loaders/loaders.volume';
import HelpersStack from 'ami.js/src/helpers/helpers.stack';
import HelpersLut from 'ami.js/src/helpers/helpers.lut';
import CamerasOrthographic from 'ami.js/src/cameras/cameras.orthographic';
import ControlsOrthographic from 'ami.js/src/controls/controls.trackballortho';

You can do like this:
import CoreUtils from 'ami.js/src/core/core.utils';
import LoadersVolume from 'ami.js/src/loaders/loaders.volume';
import HelpersStack from 'ami.js/src/helpers/helpers.stack';
import HelpersLut from 'ami.js/src/helpers/helpers.lut';
import CamerasOrthographic from 'ami.js/src/cameras/cameras.orthographic';
import ControlsOrthographic from 'ami.js/src/controls/controls.trackballortho';

Hi there,
May I ask how can I use AMI.js for my offline webpage project? I came across both "AMI.CamerasOrthographic is not a constructor" and "Cannot use import statement outside a module" error.

You can do like this:
import CoreUtils from 'ami.js/src/core/core.utils';
import LoadersVolume from 'ami.js/src/loaders/loaders.volume';
import HelpersStack from 'ami.js/src/helpers/helpers.stack';
import HelpersLut from 'ami.js/src/helpers/helpers.lut';
import CamerasOrthographic from 'ami.js/src/cameras/cameras.orthographic';
import ControlsOrthographic from 'ami.js/src/controls/controls.trackballortho';

Hi there,
What's the difference between using "import CoreUtils from 'ami.js/src/core/core.utils'" and "import {CoreUtils} from 'ami.js'"?
Thank you!

I figured it out. It seems that the only way to use ami.js is to add it as package by npm. Will offline js file works too in a specific way? I really want to build a medical image displayed offline. Any suggestion is welcomed. Thank you!


Add bash helper function to find the right way to do inplace sed commands

Because sed -i has different arguments on Mac (BSD) versus Linux (GNU), this function figures out the right invokation and puts it into an environment variable
See https://github.com/istio/istio.io/pull/8033 for the motivating reason and how I will use it in another script.
[ ] Configuration Infrastructure
[ ] Docs
[ ] Installation
[ ] Networking
[ ] Performance and Scalability
[ ] Policies and Telemetry
[ ] Security
[ ] Test and Release
[ ] User Experience
[X] Developer Infrastructure
Pull Request Attributes
Please check any characteristics that apply to this pull request.
[X] Does not have any changes that may affect Istio users.

Hi @ssuchter. Thanks for your PR.
I'm waiting for a istio member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.
Once the patch is verified, the new status will be reflected by the ok-to-test label.
I understand the commands that are listed here.

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

/ok-to-test

@ssuchter: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
1522dd13c9d3134374a4a014e99051f567f1b6b9
link
/test lint_istio

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

/retest

@ssuchter: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

lint_istio
d04af77e8a7717f001fb73b2a5436cf6c0f2fd56
link
/test lint_istio

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

/retest

I'll try putting it in that file. I was a little concerned because that file does a significant amount of stuff by just including it, so by using it there might be side-effects. I'll test on the systems available to me, and confirm it seems ok.
I don't want to use LOCAL_ARCH, because it's not guaranteed which version of sed is on the user's path, on a given architecture. Some folks are on macs, but have overridden their system (BSD) sed with GNU sed, thus making "sed -i" the correct form. Testing empirically is more robust.

Seems like the other side effects of that file aren't a problem on any of the systems I have at my disposal to test on. Closing this PR in favor of https://github.com/istio/common-files/pull/304/files


The Pgcluu report doesn't display the configuration files

Hello,
when i generate a pgcluu (v3.1) report (html), it doesn't display the configuration files (postgresql.conf, pg_hba.conf, ...)
while the data are well collected and well written in the source of the html page (cluster-pgconf.html, cluster-pghba.html, ...).
I don't understand why ...
Can you help me please ?
Thanks in advance.
cluster-pgconf.zip
Lionel

Additional info : when i remove the tag "cluster-pgconf-slide", it works ...
Strange ...

Thanks for the report, commit 62e9ab1 fixes this issue.


Get the Node library working on AWS Lambda

Someone tried to do this, and it failed with a vague error (GoogleCloudPlatform/gcloud-node#1287). The AWS documentation indicates that this should work, and it probably just requires a little tweaking.

any luck yet?

I haven't really started investigating this yet. I have more pressing issues to handle. I expect to work on this after the 1.0 release.

Any news on this?

:+1:

I ran into the same problem and used a docker image to install npm module, and it works now (at least for cloud storage), hope this workaround help someone with this problem

Thats what i had to do also. Add a package.json file in a folder, then run  docker run --rm -it -v "$PWD":/worker -w /worker node:4.2 npm i --production --silent in that folder. You should see a node_modules folder when its finished with the dependencies.

@murgatroid99 any luck on this yet?  I am trying to get Google Firestore running on lambda, but it craps out with this grpc issue.

The build for the next version appears to resolve this
https://storage.googleapis.com/firebase-admin-node/firebase-admin-5.4.3-rc0.tgz

@murgatroid99 is this resolved?

No. I believe this works, but I haven't actually done the necessary tests.

@vespertilian I'm having the same problem you describe above.  I'm developing on an x64 Windows laptop.  I'm trying to build a Lambda function that pulls data from a Google Cloud PubSub topic.  I'm using serverless to build and deploy the Lambda function.
I was able to use the command you wrote to rebuild the gRPC binary in the node_modules folder.  The function also runs locally when I use serverless-offline.  When I run serverless deploy to push my function into the AWS Lambda, the deployment succeeds, but the gRPC binary deployed is node-v48-win32-x64-unknown not the required node-v48-linux-x64-glibc.  When I invoke the Lambda function, it understandably fails with the log:

Unable to import module 'handler': Error
Expected directory: node-v48-linux-x64-glibc
Found: [node-v48-win32-x64-unknown]
This problem can often be fixed by running "npm rebuild" on the current system
Original error: Cannot find module '/var/task/node_modules/grpc/src/node/extension_binary/node-v48-linux-x64-glibc/grpc_node.node'
at Object. (/var/task/node_modules/grpc/src/grpc_extension.js:53:17)

You mention above that you were able to automate the build before deployment.  Can you please tell me how you are doing the deployment to Lambda?  Thanks for your input.

@vespertilian Belay my request for help.  I was using serverless-webpack, and it was a limitation of that tool.
Fortunately, due to the remarkable help of @HyperBrain on issue #342 of the serverless-webpack repo, I was able to solve my issue when he added support for running custom scripts during the webpack process.  For more information for anyone arriving here from Google, please see that thread for my solution (and issue #344 there, too).

@vespertilian Thank you!!

People have made comments indicating that this does work with the proper setup. That meets the original goal of this issue.

@vespertilian
Yeah so I still can't get it working! To recap:
I created a folder
Installed firebase using the command:  npm install firebase --prefix=./
Then installed grpc using: npm install grpc --target=8.1.0 --target_arch=x64 --target_platform=linux --target_libc=glibc
Then: npm install
Went into the package.json file and added the line post-install command looks like this:

Zipped it up for the Lambda and I still get the error
I have some code in my index.js, but I'm sure that it isn't even looked at because of the errors
Thanks!

If your goal is to use firebase, you don't want a direct dependency on grpc, and either way, your current postinstall script is rebuilding the instance of grpc that you are depending on directly, but probably not the instance that firebase depends on. So the solution is to remove "grpc" from that script. So it should just be npm rebuild --target=8.1.0 --target_arch=x64 --target_platform=linux --target_libc=glibc.

So no luck! I have removed the grpc using npm uninstall as you suggested. My package.json looks like this:

{
  "name": "package",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "postinstall": "npm rebuild --target=8.1.0 --target_arch=x64 --target_platform=linux --target_libc=glibc"
  },
  "dependencies": {
    "firebase": "^5.2.0"
  },
  "devDependencies": {},
  "author": "",
  "license": "ISC"
}

And I still get the error:

"errorMessage": "Failed to load gRPC binary module because it was not installed for the current system\nExpected directory: node-v48-linux-x64-glibc\nFound: [node-v57-linux-x64-glibc]\nThis problem can often be fixed by running \"npm rebuild\" on the current system\nOriginal error: Cannot find module<EMAIL_ADDRESS>  "errorType": "Error",
  "stackTrace": [
    "This problem can often be fixed by running \"npm rebuild\" on the current system",
    "Original error: Cannot find module<EMAIL_ADDRESS>    "Object.<anonymous> (/var/task/node_modules/@firebase/firestore/node_modules/grpc/src/grpc_extension.js:53:17)",
    "Module._compile (module.js:570:32)",
    "Object.Module._extensions..js (module.js:579:10)",
    "Module.load (module.js:487:32)",
    "tryModuleLoad (module.js:446:12)",
    "Function.Module._load (module.js:438:3)",
    "Module.require (module.js:497:17)",
    "require (internal/module.js:20:19)",
    "Object.<anonymous> (/var/task/node_modules/@firebase/firestore/node_modules/grpc/src/client_interceptors.js:145:12)",
    "Module._compile (module.js:570:32)"
  ]
}

This error has been very frustrating! :/
And help would still be appreciated!

Is there an issue to watch to see when grpc can get installed on a docker container with node 9/10?

No. If you are still experiencing issues, please open new issues about them specifically in https://github.com/grpc/grpc-node/issues

It should currently be possible to install grpc on a docker container with node 9 or 10.


Update text to reflect host-guest sets added in #22

I need to adjust the paper text to mention the availability of the host-guest data sets added in #22 .

Closed via #27 .


grpc++_unsecure shouldn't depend on grpc but on grpc_unsecure.

Should fix #7707.

I'm not sure I can quickly come up with a better fix.
LGTM with a squint.


Added Doxygen support for documentation

Added a config file that is used to generate html to view documentation using Doxygen.
Also added "make docs" to generate the html.

I finally got to learn what this doxygen fuss is about-- from your pull request!
I turned on the call graphs:
HAVE_DOT=YES
DOT_PATH=/usr/bin/dot
CALL_GRAPH=YES
Very pretty results, but some of the graphs are huge. Anyway, I guess that part is not necessary. I will enjoy changing the comments to doxygen comments over time.
Thanks


Update Servers article for HttpPlatformHandler changes

Closing as dupe since #720 is already tracking updating this article.


Bug of two teemo client speedHandler

If second filesize is smaller than first . last always is the first file size. Or am I wrong? I use teemo in a shared_ptr.
    if (options_ && slice_manager_) {
      int64_t now = slice_manager_->totalDownloaded();

      static int64_t last = already_download_; //here static int64
      if (now >= last) {
        int64_t downloaded = now - last;
        last = now;
        options_->speed_functor(downloaded);
      }
    }

a teemo handler only has one SpeedHandler.
what's the meaning of "two teemo client speedHandler"?

a teemo handler only has one SpeedHandler.
what's the meaning of "two teemo client speedHandler"?

two teemo client download two file

Yes, you are right!
I have fixed this issue.


Simplify example

These are better than what I originally had, overall, I think, but do you think you could either write one more case statement, or replace one of these with something that explicitly returns false, I think the explicitness would help to make it clear what you need to do.

I agree. I've rewritten one of them to be explicit.

Perfect thanks!


fix some bugs and update pom.xml

The issue was caused by the JAR being placed in the wrong directory.
Ensured all dependencies are up-to-date.
Removed deprecated 1.8 repository: Spigot repository was no longer available.
Switched to Pandaspigot alternative: Updated to a comparable alternative for Pandaspigot.
Resolved issue #11:
Resolved issue #12:
Cleaned up redundant files from the project.
Corrected the problem of players getting stuck within arena boundaries (commit link).
Cleaned up suboptimal code (use FlamePearls).
Players can no longer throw pearls outside the map
Return player if no lobby is found
Fixed a critical bug where only a maximum of 2 players could play on the map due to chunk issues.
Restrict match if your player exits during party leave

you uploaded the wrong jar to spigot

todo: fix player hide feature


[ci] Update CI systems setup to install dependencies

Check that dependencies (like fabio) are installed during continuous integration so that as much test as possible are run.

Status after PR #607 (which adds fabio) gets merged:

On appveyor (Windows): pyopencl, Mako and PyOpenGL (as well as drivers/mesa impementation) are not installed and related tests are not run.
On travis (Linux and MacOS): All dependencies are installed and all tests are run (except GUI tests on Linux with python 2.7 and 3.4 which are missing a PyQt wheel to be enabled).

As far as I know PyOpenGL is a source package not requiring compilation.
What is the problem of having it for AppVeyor?

No problem... but it will also need OpenGL drivers or mesa lib.
I'll add it when I actually have some tests using OpenGL.


SvgViewer outputs SVG file.

Reference Issue

What does this implement/fix? Explain your changes.

SvgViewer outputs SVG file.
Any other comments?

@mrbean-bremen
I check both image and SVG.
It is inefficient to enable it every time I check.


I can't use --preRelease=beta and conventional:angular together

When I try to release a beta from my package using "increment": "conventional:angular" it always releases a prepatch version. I think this is because when I use --preRelease=beta, "increment": "prerelease" is always set. So release-it skips version conventional calculation.
If i execute:
release-it --dry-run --debug --preRelease=beta

then:
release-it:config { _: [],
  release-it:config   'dry-run': true,
  release-it:config   d: true,
  release-it:config   dryRun: true,
  release-it:config   debug: true,
  release-it:config   e: true,
  release-it:config   preRelease: 'beta',
  release-it:config   increment: 'prerelease',
  release-it:config   preReleaseId: 'beta',

if I execute:
release-it --dry-run --debug

then:
release-it:config { _: [],
  release-it:config   'dry-run': true,
  release-it:config   d: true,
  release-it:config   dryRun: true,
  release-it:config   debug: true,
  release-it:config   e: true,
  release-it:config   increment: 'conventional:angular',

release-it version: v8.4.0
release-it config:
{
    "increment": "conventional:angular",
    "non-interactive": true,
    "requireUpstream": false,
    "preReleaseId": "canary",
    "requireCleanWorkingDir": false,
    "src": {
        "commitMessage": "ci: %s [ci skip]",
        "tagAnnotation": "%s"
    },
    "npm": {
        "publish": false
    },
    "github": {
        "release": true,
        "releaseName": "%s",
        "tokenRef": "GITHUB_TOKEN",
        "draft": false
    },
    "changelogCommand": "git log --pretty=format:'* %s (%h)' [REV_RANGE]"
}

How could I do that?

I would like to suggest:
if we contact: "increment": "conventional:angular:prerelease",
then when we const [system, preset, prerelease] = split(':') we will have three var, and we can decide with:
const recommendedType = await getConventionalRecommendedBump(preset);
if (prerelease) {
  const preReleaseMapper = { patch: 'prepatch', minor: 'preminor', major: 'premajor' };
  recommendedType = preReleaseMapper[recommendedType];
}

Thanks for the bug report, @dani8art. I was working on a slightly new implementation for this, but for now I've made a quickfix in v8.4.1. Please let me know if it works for you!

And then a fix in v8.4.2 for pre-release continuations. So first a "beta" pre-release is ready, e.g. from 1.4.1 to 1.4.2-beta.0:
release it --preRelease=beta

And then this can be incremented to 1.4.2-beta.1:
release it --preRelease

Sorry but this fix doesn't work for me, I still get:
My git log is:
* chore: version updated (31fe63d)
* refactor(main): remove all (4d99b4b)
* feat(devops): recomend minor (3d2bf02)

If I execute:
release-it --dry-run --debug --preRelease=beta

then I receive:
0.0.4-beta.0

but I should receive:
0.1.0-beta.0

Could you take a look over the solution I've proposed?
Regards.
Thank you.

In addition, It has introduced a bug because it always create a prerelease if you have configured a preReleaseId, even if you don't use --preRelease flag.
if I execute:
release-it --dry-run --debug

It creates 0.1.0-canary.0 when it should create 0.1.0.

@webpro
Ok, I'll try to open a PR.
I've mentioned this bug because with the configuration I had, it was broken. Maybe can break others guys.
Regards.

This should be fixed in v9.


fix: check for nil value in the pod status

When getting the status of a pod and there's no sha256 in the status this could be nil, leading to a panic in the code while trying to check if there is a pending restart.
Closes #2389

/test tl=4


Use the local branch code to deploy in the containerize environment

The current test environment that use the container obtain the code from the GitHub, development branch by default.
This feature is important to proceed with test on the current core pushed to the server.
There should be a way to build the container infrastructure using user git addresses or local code to test the code before the Pull-Request.

Do you mean building the container using local branch code?
Interesting...

I cannot tell you if it's building or not, but, when you clone code from the GitHub, I would like to use a branch from my personal GitHub account.

Ok, I get it. You want to use the containers ecosystem to test your draft code...
Let me work on this...

testes and looks good... tkx @nunojusto