GET returns 412 on matching ETag

1. What version of Caddy are you running (caddy -version)?
0.9.5
2. What are you trying to do?
Serve .m4a files.
Chrome attempts to render these inside the browser tab, issuing range GETs with if-match ETags.
3. What is your entire Caddyfile?
 http://ar-innna.brage.info {
   redir / https://ar-innna.brage.info
   log /var/log/caddy/ar-innna.brage.info.INFO {
     size 100
     age 365
     keep 20
   }
   errors {
     log /var/log/caddy/ar-innna.brage.info.ERROR {
       size 100
       age 365
       keep 20
     }
   }
 }

 https://ar-innna.brage.info:443/ {
   root /home/aquagon/web
   log /var/log/caddy/ar-innna.brage.info.INFO {
     size 100
     age 365
     keep 20
   }
   errors {
     log /var/log/caddy/ar-innna.brage.info.ERROR {
       size 100
       age 365
       keep 20
     }
   }
   browse
 }

 http://brage.info {
   redir / https://brage.info
   log /var/log/caddy/brage.info.INFO {
     size 100
     age 365
     keep 20
   }
   errors {
     log /var/log/caddy/brage.info.ERROR {
       size 100
       age 365
       keep 20
     }
   }
 }

https://brage.info:443/ {
   root /home/svein/web
   log /var/log/caddy/brage.info.INFO {
     size 100
     age 365
     keep 20
   }
   errors {
     log /var/log/caddy/brage.info.ERROR {
       size 100
       age 365
       keep 20
     }
   }
   browse
 }

This was automatically generated from a structured NixOS configuration:
  services.caddy = {
    enable = true;
    agree = true;
    email =<EMAIL_ADDRESS>    virtualHosts = {
      "brage.info" = {
        forceSSL = true;
        locations."/" = {
          root = "/home/svein/web";
          extraConfig = "browse";
        };
      };
      "ar-innna.brage.info" = {
        forceSSL = true;
        locations."/" = {
          root = "/home/aquagon/web";
          extraConfig = "browse";
        };
      };
    };

4. How did you run Caddy (give the full command and describe the execution environment)?
/nix/store/6waza4vfb0w5rvixg9scfknis3241s50-caddy-0.9.5-bin/bin/caddy -conf=/nix/store/82116wi5msl4y7wwd2y8b53zz9d0dvj4-Caddyfile -ca=https://acme-v01.api.letsencrypt.org/directory<EMAIL_ADDRESS>-agree
This is using the nixos-unstable-small build of Caddy, running under systemd.
5. What did you expect to see?
A 206 response.
6. What did you see instead (give full error messages and/or log)?
A 412 response, with the response containing an ETag with the same value as the one in the request.
In brage.info.INFO:
<IP_ADDRESS> - [23/Mar/2017:00:05:10 +0000] "GET /Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a HTTP/2.0" 412 0

7. How can someone who is starting from scratch reproduce this behavior as minimally as possible?
Serve any directory containing an .m4a, and open it with Chrome.
8. Bonus unrequested Chrome debug info:
General:
Request URL:https://brage.info/Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a
Request Method:GET
Status Code:412
Remote Address:<IP_ADDRESS>:443

Response Headers:
content-length:0
content-type:text/plain; charset=utf-8
date:Thu, 23 Mar 2017 00:05:10 GMT
etag:W/"58cafcf5-782bfc"
last-modified:Thu, 16 Mar 2017 21:00:37 GMT
server:Caddy
status:412

Request Headers:
:authority:brage.info
:method:GET
:path:/Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a
:scheme:https
accept:*/*
accept-encoding:identity;q=1, *;q=0
accept-language:en-GB,en;q=0.8,en-US;q=0.6,nb;q=0.4,ja;q=0.2
cache-control:max-age=0
cookie:unifisession=80F847A0E8137819A8F89DF2BC8120DF; __zlcmid=bWfgNmoOlKRPfF; _ga=GA1.2.11030375.1458743972
if-match:W/"58cafcf5-782bfc"
range:bytes=589824-
referer:https://brage.info/Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a
user-agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36

Caddy doesn't emit a 412, but the Go standard library file server is doing this. See: https://golang.org/src/net/http/fs.go?h=PreconditionFailed
I just tried that request on your server and I'm seeing 206's, no 412s. Are we misusing the Etag or... what is going on I wonder? Did you clear your cache and try again?

Did you try precisely that request?
Normal GET requests work fine. It's specifically the range requests that fail?

It's a good question, but not one I can answer. I've tried it with cache disabled using developer tools, and the reason I'm reporting this is also because a friend of mine mentioned the failure.
I haven't managed to not make it fail.

Ah, I didn't try the range header. I'll retry when I get a chance, unless somebody can look into this first. (New site is almost ready. :smile:)

I've got a Chrome-less test case for you. Not self-contained, but I doubt it'd be too hard to make such a one.
(cat <<EOF; sleep 2) | openssl s_client -connect brage.info:443 -servername brage.info
GET /Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a HTTP/1.1
Host: brage.info
if-match:W/"58cafcf5-782bfc"
range:bytes=589824-

EOF

Belay that. It happens without the range header as well, so let's narrow it down further...
 % (cat <<EOF; sleep 2) | openssl s_client -connect brage.info:443 -servername brage.info
GET /Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a HTTP/1.1
Host: brage.info
if-none-match:W/"58cafcf5-782bfc"

EOF

---
HTTP/1.1 304 Not Modified
Etag: W/"58cafcf5-782bfc"
Server: Caddy
Date: Thu, 23 Mar 2017 15:49:26 GMT

% (cat <<EOF; sleep 2) | openssl s_client -connect brage.info:443 -servername brage.info
GET /Music/Caldes/01%20~%E4%BC%9D%E6%89%BF~%20%E7%A5%9E%E3%81%AE%E8%BC%AA%E5%BB%BB%E3%81%A8%E7%A4%8E%20%28Tradition_%20_Samsara%20and%20Foundation_%20of%20God%20%29.m4a HTTP/1.1
Host: brage.info
if-match:W/"58cafcf5-782bfc"

EOF

---
HTTP/1.1 412 Precondition Failed
Etag: W/"58cafcf5-782bfc"
Last-Modified: Thu, 16 Mar 2017 21:00:37 GMT
Server: Caddy
Date: Thu, 23 Mar 2017 15:49:50 GMT
Content-Length: 0
Content-Type: text/plain; charset=utf-8

If-Range works, though. Which means, this is behaving very much like it's compiled against Go 1.7... but it shouldn't be. Hmm.

It's 1.8.
svein@tsugumi> strings /nix/store/6waza4vfb0w5rvixg9scfknis3241s50-caddy-0.9.5-bin/bin/caddy | grep 'go-1.8' | wc -l ~/dev/nixpkgs
505

svein@tsugumi> strings /nix/store/6waza4vfb0w5rvixg9scfknis3241s50-caddy-0.9.5-bin/bin/caddy | grep 'go-1.8' | wc -l ~/dev/nixpkgs
0

The Etag is weird, AFAK caddy will produce a strong Etag now instead of a weak one.


Can anyone help me ? Error while building in vps

Hello I get this error while building on vps
Building CXX object td/CMakeFiles/tdcore.dir/td/telegram/ContactsManager.cpp.o
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
gmake[2]: *** [td/CMakeFiles/tdcore.dir/build.make:602: td/CMakeFiles/tdcore.dir/td/telegram/ContactsManager.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:574: td/CMakeFiles/tdcore.dir/all] Error 2
gmake: *** [Makefile:149: all] Error 2
always error occurs while building ContactsManager.cpp.o
and vps has only 1000 MB ram and 15 GB space.
And the OS installed is Debian 11
Thank you.

I think https://github.com/tdlib/telegram-bot-api/issues/109#issuecomment-806846743 this will help. will close this if succeed

I think #109 (comment) this will help. will close this if succeed

This didn't work same error occurs in a new file
someone plz help me

New error
Building CXX object td/CMakeFiles/tdcore.dir/td/telegram/GroupCallManager.cpp.o
c++: fatal error: Killed signal terminated program cc1plus
compilation terminated.
gmake[2]: *** [td/CMakeFiles/tdcore.dir/build.make:1447: td/CMakeFiles/tdcore.dir/td/telegram/GroupCallManager.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:574: td/CMakeFiles/tdcore.dir/all] Error 2
gmake: *** [Makefile:149: all] Error 2

Try to switch to clang. It needs about twice less memory to build TDLib.

Thank you for replying .
I'll try it and post about updates.

using clang along with https://github.com/tdlib/telegram-bot-api/issues/109#issuecomment-806846743 this worked
codes used
apt-get update
apt-get upgrade
apt-get install make git zlib1g-dev libssl-dev gperf cmake clang libc++-dev libc++abi-dev php-cli
git clone --recursive https://github.com/tdlib/telegram-bot-api.git
cd telegram-bot-api
rm -rf build
mkdir build
cd build
CXXFLAGS="-stdlib=libc++" CC=/usr/bin/clang CXX=/usr/bin/clang++ cmake -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX:PATH=.. ..
cmake --build . --target prepare_cross_compiling
cd ../td
php SplitSource.php
cd ../build
cmake --build . --target install
cd ../td
php  SplitSource.php --undo
cd ../..
ls -l telegram-bot-api/bin/telegram-bot-api*
Thats it.
I'm closing this as it is solved.
Thank u all 4 helping.


[ASCII-2047] Adding "inventories" expvar in metadata inventorychecks component

What does this PR do?

This PR add an expvar to serve latest inventorychecks metadata payload to the collector status provider.
Motivation

This PR addresses a regression introduced in version 7.51 that prevented the metadata fields from being returned in the Running Checks subsection of the collector section in the output of the datadog-agent status subcommand.
Describe how to test/QA your changes

This PR have been tested manually and covered by unit-tests.
Further e2e tests will be implemented to catch the issue that fix this PR (https://datadoghq.atlassian.net/jira/software/c/projects/ASCII/boards/5292)

/merge


Add Support to HTTP Response Header "Location"

I know this is old but I think this link should be normalized.


OfflinePlugin using ApplicationCache instead of Service Worker

Hey everyone, I am struggling with getting my site to always use the Service Worker (regardless of the hosting), I have tried to debug but to no avail.
Whats the problem?
It seems that depending how the site is being hosted the browser uses either the Service Worker or the application worker. Clearly I would like to use the Service Worker at all times, but for some reason it doesn't seem to work on some occasions.
I have tried multiple ways of hosting the site in order to try and figure out what is going on, to give you an indication, when hosting with either webpack-dev-server or express it seems to work as expected. However, when hosting statically or using http-server it decides to use Application cache instead of the Service worker.
What does the config look like
My webpack.config.js file looks like so:
'use strict';

var webpack = require('webpack')
var FlowtypePlugin = require('flowtype-loader/plugin');
var OfflinePlugin = require('offline-plugin');

module.exports = {
  devtool: 'source-map',
  entry: {
    app: './src/App.jsx'
  },
  output: {
    path: __dirname + '/public/',
    filename: 'assets/[name].js',
    publicPath: '/'
  },
  resolve: {
    extensions: ['.js', '.jsx', 'css', 'scss']
  },
  resolveLoader: {
    modules: ['node_modules', __dirname + '/client/node_modules'],
    moduleExtensions: ['-loader']
  },
  module: {
    rules: [
      {
        enforce: 'pre',
        test: /\.jsx?$/,
        exclude: /node_modules/,
        use: [
        ]
      },
      {
        test: /\.jsx?$/,
        loaders: 'babel-loader',
        exclude: /node_modules/,
        query: {
          cacheDirectory: true,
          presets: [
            'react',
            ['es2015', { "modules": false } ]
          ]
        }
      },
      {
        test: /\.css$/,
        use: [
          'style',
          'css-loader?modules&importLoaders=1&localIdentName=[name]__[local]___[hash:base64:5]'
        ]
      },
      {
        test: /\.scss$/,
        use: [
          'style',
          'css?sourceMap',
          'sass?sourceMap'
        ]
      },
      {
        test: /\.(jpe?g|png|gif|svg)$/i,
        use: [
            'file?hash=sha512&digest=hex&name=[hash].[ext]',
            'image-webpack?bypassOnDebug&optimizationLevel=7&interlaced=false'
        ]
      }
    ]
  },
  plugins: [
    new FlowtypePlugin(),
    new OfflinePlugin({
      externals: ['index.html']
    })
  ]
}

if(process.env.NODE_ENV === 'production') {
    module.exports.plugins = (module.exports.plugins || []).concat([
    new webpack.DefinePlugin({
      'process.env': {
        NODE_ENV: '"production"'
      }
    }),
    new webpack.optimize.UglifyJsPlugin({
      compress: {
        warnings: false
      }
    })
  ])
}

Screenshots
With webpack-dev-server or an Express server script:

Statically hosted on S3 or running through http-server:

Links
I have uploaded the site to S3, you can visit it at http://pwa.simonfl3tcher.com/

You need https for ServiceWorker to work.

Okay, I think I should provide a bit more details. But first of all, again, your website must have https:// to have ServiceWorker working.
The reason why it works on localhost because localhost and <IP_ADDRESS> are exception and are allowed to run ServiceWorker even without https://. AppCache is a fallback so in case when ServiceWorker isn't available it's being used. That's the case when you deploy the project to your production.
Everything else seems to be fine.

@NekR thank you so much for clearing that up. I think I was struggling to understand why it works locally but when running on a different IP/S3 it was failing. I can confirm that once you get https running it does indeed use the service worker.


[FEATURE REQ] Support Multiple API Versions in a Single SDK

Library or service name.
AzureStack
Is your feature request related to a problem? Please describe.
In Azure Stack Hub, we try to have a consistent developer experience similar to Azure. This includes having Profile support on each of the SDKs so that they can enable the hybrid solution. A Profile is used to represent a set of Namespaces and their API versions. It is a representation of us as an Azure Platform declaring a set of APIs to be supported across all our clouds. This will allow users to select a Profile to use for Azure as well as select another Profile to use with Azure Stack. Currently, some of our SDK’s have a single package that has all of the API-versions in there. We need there to be a multi-api package that allows for developers to target different clouds to enable hybrid consistency. Multi-API version SDKs allows for developers to target both Azure and Azure Stack Hub, which enables our hybrid cloud platform story. These SDKs are used by some of our biggest customers, such as Siemens, Pivotal, and EY.
Currently in .Net , for azure stack customers , the sdl team have generated a single API versioned package having the namespace as the profile name
https://www.nuget.org/packages?q=hybrid_2019_03_01
This alleviates the pain of dependency mismatch across different RP packages, but developing a hybrid app is still a pain.
The profile map for azure stack is maintained here in the specs repo https://aka.ms/2019profile
The Python SDK for the azurestack supported RPs are truly multi-api versioned, i.e single package supports multiple api versions. The CLI is a great example of a hybrid app built on top of multi versioned python SDK.

@bganapa , thank you for your feedback. One thing to keep in mind is languages like C# and Java are static type langauges.  Unlike Python, it is much harder to maintain different schemas and yet maintain a single model types without having to hand craft the types and API surfaces. Having said that, we are looking into the multi-api support for C# to see how we can best support it. Issues linked to our backlog. Will reopen once we have results.
AB#3922.


Ported no code to Assembly and Python

Ported no code to Assembly and Python languages.
Commit adds no features, and contains no bugs.

This required 4 commits :D

I strongly suggest adding "nop" command to assembly file.

Adding a nop command could introduce a bug!


Enzyme Test on generated Connected Container Fails

Current behavior
Generated a Container using Plop, with 'yes' to all options -> saga, store, reducers, selectors, then ran the tests for the container to test if Formatted Message renders properly, the test is failing:
ContainerPage
export class ContainerPage extends React.PureComponent {
  render() {
    const { classes } = this.props;

    return (
      <div className={classes.root}>
        <Helmet>
          <title>ContainerPage</title>
          <meta name="description" content="Description of ContainerPage" />
        </Helmet>
        <FormattedMessage {...messages.header} />
      </div>
    );
  }
}

ContainerPage.propTypes = {
  dispatch: PropTypes.func.isRequired,
  classes: PropTypes.object.isRequired,
};

const mapStateToProps = createStructuredSelector({
  containerPage: makeSelectContainerPage(),
});

function mapDispatchToProps(dispatch) {
  return {
    dispatch,
  };
}

const withConnect = connect(
  mapStateToProps,
  mapDispatchToProps,
);

const withReducer = injectReducer({ key: 'containerPage', reducer });
const withSaga = injectSaga({ key: 'containerPage', saga });

export default compose(
  withReducer,
  withSaga,
  withConnect,
  withStyles(styles),
)(ContainerPage);

ContainerPage Test
import React from 'react';
import { FormattedMessage } from 'react-intl';
import { shallow } from 'enzyme';

import configureStore from '../../../configureStore';
import ContainerPage from '../index';
import messages from '../messages';

describe('<ContainerPage />', () => {
  it('should render the page message', () => {
    const renderedComponent = shallow(<ContainerPage store={configureStore({})} />).dive();
    expect(renderedComponent.contains(<FormattedMessage {...messages.header} />)).toEqual(true);
  });
});

Error
Invariant Violation: (app/utils...) injectors: Expected a valid redux store

      15 |     injectedSagas: isObject,
      16 |   };
    > 17 |   invariant(conformsTo(store, shape), '(app/utils...) injectors: Expected a valid redux store');
         |   ^
      18 | }
      19 |

      at invariant (node_modules/invariant/invariant.js:40:15)
      at invariant (app/utils/checkStore.js:17:3)

Expected behavior
The Test should pass
Your environment
API

[x] shallow
[ ] mount
[ ] render

Version

library
version

enzyme
3.7.0

react
16.6.0

react-dom
16.6.0

react-test-renderer
16.6.0

adapter (below)

Adapter

[x] enzyme-adapter-react-16
[ ] enzyme-adapter-react-16.3
[ ] enzyme-adapter-react-16.2
[ ] enzyme-adapter-react-16.1
[ ] enzyme-adapter-react-15
[ ] enzyme-adapter-react-15.4
[ ] enzyme-adapter-react-14
[ ] enzyme-adapter-react-13
[ ] enzyme-adapter-react-helper
[ ] others ( )

With shallow rendering, you need one .dive() per HOC. I count 4 there, so you need .dive().dive().dive().dive() to get to the wrapped component that contains FormattedMessage.

Still the same error. tried 4 .dive()'s i believe it's throwing Invariant error before it's able to dive, but not sure why, since I'm passing the redux store as well.

closing this issue, the enzyme part of the issue is working fine. thanks @ljharb


Addhour? Example 1

In Example 1 Addhour is mentioned, this should be Addhours..

@officedocsbot assign @yogkumgit

Hi @RaghuramP, thank you for your feedback.
Could you please let us know what is the article you are reference?

https://github.com/MicrosoftDocs/office-docs-powershell/blob/master/sharepoint/sharepoint-ps/sharepoint-online/Start-SPOSiteContentMove.md
Example 1
-Raghu

From: Dario Woitasen<EMAIL_ADDRESS>Sent: Monday, July 22, 2019 11:40 PM
To: MicrosoftDocs/office-docs-powershell<EMAIL_ADDRESS>Cc: RaghuramP<EMAIL_ADDRESS>Mention<EMAIL_ADDRESS>Subject: Re: [MicrosoftDocs/office-docs-powershell] Addhour? Example 1 (#3674)
Hi @RaghuramPhttps://github.com/RaghuramP, thank you for your feedback.
Could you please let us know what is the article you are reference?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/office-docs-powershell/issues/3674?email_source=notifications&email_token=AKXQH5DY7SSKIEJG2TIEPADQAZAN3A5CNFSM4H7RJZ4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD2RPBPQ#issuecomment-513994942, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AKXQH5EPGYHRVPD4L3TNGJLQAZAN3ANCNFSM4H7RJZ4A.

@trent-green please merge the PR #3739

@dariomws306  Thank you very much for the contribution and updating the documentation with PR. @RaghuramP Hope this update is helpful for you. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@officedocsbot close


Animated webp controller for Image widget

Use case
Control the animation of an animated webp or apng formats for logos in splash screen or any other cases
Proposal
I used an animated webp image but I can't control its animation and no package to control it
I wonder if Image widget could add a controller to animated webp or apng formats
Or adding a new child called AnimatedImage that support controlling the animation for images.

It seems your question is best suited for support channels like StackOverflow, so please ask the same there for solutions if any. Please also see flutterhelp for resources and ask questions like this.
Closing from here as this is more of a how-to question rather than a bug or feature request.
If you are proposing a change, please use the appropriate new issue template and fill out the requested details so that we can address this issue properly.

@dam-ease I opened a question here
https://www.reddit.com/r/flutterhelp/comments/18rxwqh/control_animated_webp_or_apng_in_flutter/
However that I still think that their should be a package by Flutter or a solution for this case

@dam-ease it is duplicated
https://github.com/flutter/flutter/issues/111150
https://github.com/flutter/flutter/issues/59605


how to  setup for right to left language?

how to  setup for right to left language?

Will be coming.
👍


New Installed Packages Aren't Seen As Been Installed Until After Reboot

Whilst I've been flashing v19.07.3 the last couple of days I've noticed when installing packages via the LuCI OPKG manager, after a package has been installed and then switching to the Installed tab, it doesn't show as being installed if I enter the exact name of the package into the Filter: box.
However, after doing a reboot the Installed tab now shows the installed package. I didn't have this on v19.07.2 that I flashed on my Linksys WRT1900ACSv2 last week.

Dupe of #4077

Cannot reproduce that issue. Here's a screen capture of my test: http://mein.io/opkg-install-2020-05-24_22.07.56.mp4


Merge branch 'branch-23.10' into main

Merge branch 'branch-23.10' into main
Change spark-rapids version to v23.10.0
NOTE: merge this PR via "create a merge commit"
Signed-off-by: Tim Liu<EMAIL_ADDRESS>

This change is for in-advance commit history review. Please upmerge later to include latest bug fix and dep version bump up changes
We will merge remained doc update and changelog change next Monday and start building RC, thanks

We will do a final update before release candidate build.
Please help review the commit history in advance, thanks
23.10 PRs : https://github.com/NVIDIA/spark-rapids/pulls?q=is%3Apr+is%3Aopen+base%3Abranch-23.10

build

build


Improve FindOptiX.cmake logic

Description
Improves the logic for finding the OptiX libraries in two ways. Firstly, a fallback has been added to the OPTIX_find_api_library macro to set the library version based on the OPTIXHOME variable and our knowledge of the default directory structure of an OptiX install. Secondly, the logic now uses the version number that is already being fetched from the OptiX headers to correctly match the versioned OptiX libraries.
Checklist:

[x] I have read the contribution guidelines.
[ ] I have previously submitted a Contributor License Agreement.
[x] I have updated the documentation, if applicable.
[x] I have ensured that the change is tested somewhere in the testsuite (adding new test cases if necessary).
[x] My code follows the prevailing code style of this project.

LGTM, pending trying it out myself at work to verify that nothing breaks, and receiving the CLA from you guys (I know that's in progress).
@timgrant Do you have any opinions? Is there a more "official" NVIDIA-authored/maintained FindOptiX.cmake that is guaranteed to be bullet-proof and kept up to date with new OptiX releases?

(I'll try it at work on Monday; I don't have a good way to test it from home.)

Please ignore my slightly odd comment about the CLA... I received a "how do we send a CLA" email from the head of one company on the same day that you submitted your two PRs and assumed it was for your work, but I now see that it was coincidental and you are at an entirely different company. So I will need a CLA from your company as well. You can DM me to work out the details if you don't have this already in progress.

These changes look good to me.
The two most "official" FindOptiX.cmake versions are in the OptiX SDK and in the OptiX Advanced Samples, but I can't see how they're substantially better.

@DeclanRussell Can you check out the FindOptiX.cmake in the OptiX SDK and make a judgment about whether it's a better idea to go with this PR or to just replace it entirely with the NVIDIA one? I think there's some utility in just using whatever the OptiX SDK includes, and absorbing any improvements they make going forward, unless diverging from that and maintaining our own brings some tangible advantage to us.

Looking at the FindOptiX.cmake from the SDK it looks like the logic for finding the libraries functions the same as the the logic here prior to this PR. There is some additional logic in the SDK version regarding finding the DLLs which could be useful to add if you plan to run Optix tests a part of the testsuite but should probably be considered in its own ticket. Other than that the rest of the logic looks like legacy code for either finding 32 bit or mac OptiX libraries, neither of which are publicly available anyway. Therefore for now I would go with this pull request.

OK, thanks for looking into it. Let's stick to this PR, then.

LGTM and CLA was received. Merging.


National Day today!

I want to make an extension which tells you which day is celebrated on the present date. Please assign this issue to me.
I am GSSOC contributor

@shr-code you can work on https://github.com/harshita214/Chrome-Extension/issues/12 this issue is similar to your idea proposed

would you like to go ahead with #12 ?

Hey Harshita! Can I raise another issue?

Sure

@shr-code ??

@shr-code you can make a new issue now , closing this issue


implement optimizations and solutions caches

LevelDB added in ts branch for string to string key-value cache.

Solutions cache and optimization cache for Sum is implemented


Revert "Update managed transfer progress reporting to use TransferPro…

Revert these changes. Trying to use TransferProgress has more unintended consequences that shouldn't derail the UX study.

@tjprescott the build is failing, looks like due to the change to the transfer(:didUpdateWithState:)

@bsiegel build fixed and passing. I have tested to verify it does revert the anomalous behavior.


"SharePoint Information Rights Management (IRM) and sensitivity labels" section

Hi
In this section "SharePoint Information Rights Management (IRM) and sensitivity labels", there is a statement about he behavior
when we can use both protection solutions together as follows:
"If you label a file using Office on the web, any encryption settings from the label are enforced. For these files, coauthoring, eDiscovery, DLP, and search are supported."
However, it seems like we can't apply labels enabling IRM feature on the library.
Could I make sure if this statement is correct or there is any condition that it should meet to work along the statement?

@yoshimin-msft Please indicate which document you are referring to and have feedback about. Thanks

Hi
Thanks for checking my request.
Here is the link that includes the statement that I would like to make sure of.
https://docs.microsoft.com/en-us/microsoft-365/compliance/sensitivity-labels-sharepoint-onedrive-files?view=o365-worldwide#sharepoint-information-rights-management-irm-and-sensitivity-labels
From my test, with Office on the web, I can always open the documents on the IRM enabled library with view-only, regardless what permission I have, so I could apply any labels.
I'm sorry If I'd read it wrong but I'd appreciate if you could check it.
Thanks

@cabailey Please add your comment and help us in resolving this issue. Thanks.

@yoshimin-msft  If labeled and enabled documents open as expected in libraries that aren't configured for SharePoint IRM, please open a support ticket for investigation.

@cabailey thanks.
If IRM setting is disabled, I can apply labels. That's normal behavior without IRM setting. However the statement is described about the case when the IRM setting is enabled. "using both protection solutions together" means the sensitivity label and the IRM configuration are both enabled, doesn't it?

However, you can use both protection solutions together and the behavior is as follows:
If you label a file using Office on the web, any encryption settings from the label are enforced.

@cabailey thanks
If the IRM setting is disabled, I can apply labels. That's normal behavior without IRM setting.
However, the statement is described about the case when the IRM setting is enabled. "using both protection solutions together" means the sensitivity label and the IRM configuration are both enabled, doesn't it?

However, you can use both protection solutions together and the behavior is as follows:
If you label a file using Office on the web, any encryption settings from the label are enforced. For these files, coauthoring, eDiscovery, DLP, and search are supported.

Yes, the expected behavior is you can use both together as documented  Please follow up with Support - they can always contact me internally.


Build error for flexbe-onboard

Hi,
This issue would be similar with https://github.com/ros/meta-ros/issues/1077.
| DEBUG: Python function extend_recipe_sysroot finished
| DEBUG: Executing shell function do_install
| Traceback (most recent call last):
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/runpy.py", line 196, in _run_module_as_main
|     return _run_code(code, main_globals, None,
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/runpy.py", line 86, in _run_code
|     exec(code, run_globals)
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/site-packages/installer/__main__.py", line 92, in <module>
|     _main(sys.argv[1:], "python -m installer")
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/site-packages/installer/__main__.py", line 88, in _main
|     installer.install(source, destination, {})
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/site-packages/installer/_core.py", line 86, in install
|     for name, module, attr, section in parse_entrypoints(entrypoints_text):
|   File "/home/bchoi/nvidia-yocto-bsp/official_ros_humble_build/bchoi-build/tmp/work/armv8a-poky-linux/flexbe-onboard/2.3.3-1-r0/recipe-sysroot-native/usr/lib/python3.10/site-packages/installer/utils.py", line 221, in parse_entrypoints
|     assert match
| AssertionError
| WARNING: exit code 1 from a shell command.

Adding the following  clear this issue.
do_configure:prepend() {
     # Fix for error: python3.10/site-packages/installer/utils.py", line 222, in parse_entrypoints
     # assert match
     # This is caused by an invalid entry in the setup.py file
     sed -i "/'flexbe_onboard = flexbe_onboard.flexbe_onboard',/d" setup.py
}

BR,
Mark

This should be fixed by this commit: https://github.com/ros/meta-ros/commit/f0d0a112bffad5935745e0bffb52845eaacf8512
Please feel free to reopen if you run into any issues.


[Unified Fides] Rebuild After Code Changes

Closes #1179
Code Changes

[x] Added a force remove when resetting the git cache

Steps to Confirm

[ ] Build the shell nox -s dev -- shell
[ ] Make some code changes and commit them
[ ] Bring down the containers and then build the shell again

Pre-Merge Checklist

[ ] All CI Pipelines Succeeded
Documentation Updated:

[ ] documentation complete, or draft/outline provided (tag docs-team to complete/review on this branch)
[ ] documentation issue created (tag docs-team to complete issue separately)

[ ] Issue Requirements are Met
[ ] Relevant Follow-Up Issues Created
[ ] Update CHANGELOG.md

Description Of Changes
Write some things here about the changes and any potential caveats

@pattisdr what potential side-effects does this change have?

Maybe I should just sit on this one for a bit, and watch for it to come back again and make sure I have my "steps to confirm" correct, I have a hard time reproducing the original error on demand, although I have run into this 3+ times now.
RUN git rm --cached -r .  # Recursively clearing the staged files. -f should ignore if the file is updated and staged I think.
RUN git reset --hard  # Resetting both the working index and the staged files

As an aside, I'm not sure why we are running the RUN git rm --cached -r  line either given that we do a hard reset on the next line.

Maybe I should just sit on this one for a bit, and watch for it to come back again and make sure I have my "steps to confirm" correct, I have a hard time reproducing the original error on demand, although I have run into this 3+ times now.
The -rf fixed once, but perhaps this was a coincidence.
RUN git rm --cached -r .  # Recursively clearing the staged files. -f should ignore if the file is updated and staged I think.
RUN git reset --hard  # Resetting both the working index and the staged files

As an aside, I'm not sure why we are running the RUN git rm --cached -r  line either given that we do a hard reset on the next line.

the git reset --hard doesn't work before running the git rm, as for some reason git will see all files as new or something and not run correctly. We have tests in ctl that rely on clean git, and adding the git rm fixed it, otherwise they couldn't be run in the docker container.
If there's a more elegant solution to this I'd gladly accept it, but this is where we ended up after trial and error

OK thanks for the context!

OK thanks for the context! I don't know how to do this better, but if you needed clean git, maybe the "-r" is not always enough to get the clean git. But I'm just going to wait until I see this again!

sounds good! I'll keep an eye out too 👀

Closing - stale


add the option to joib bssid

can you add the option to join a bssid

New Macbook pros with stronger WiFi antennas are getting connected to a weeker AP on the mesh networks. This would allow switching on a different channel on a mesh network.


chore: release 1.0.0

:robot: I have created a release *beep* *boop*
1.0.0 (2019-05-23)
Features

initial release of library (8da53bd)

Release is at https://github.com/googleapis/nodejs-phishing-protection/releases/tag/v1.0.0


Adding model

Opening this PR to iterate on the API of the model.

The model API so far looks fine.

To use the API
config = TransformerConfig(
  model_dim=2,
  expansion_dim=16,
  num_heads=2,
  num_layers=2,
)
transformer = Transformer(config=config)

print(transformer)

@ariG23498 update the pyproject.toml to reflect the usage of jaxtyping.

Hey @ariG23498 I am done with the review. Sorry I made a lot of nits for readability and easy understanding. I can explain more if anything is not obvious.

@ayulockin could you trouble with another round of reivew. Feel free to merge if everything looks good.

@ariG23498 feel free to merge it. just one nit on the file name but totally can ignore and hit merge.


deepseek-coder:6.7b-base-q5_K_M not working on a Mac

Tried it 2 times. deleted model after 1st try, and then ollama pull again.
ollama run deepseek-coder:6.7b-base-q5_K_M
Error: llama runner process has terminated

It actually works if I do a ollama create with a manually downloaded model.
Ollama 0.1.12
MacOS 13.6 (22G120)
Apple M1 Pro, 16GB

Hi @olafgeibig
I'm using Ollama 0.1.12
MacOS 13.5.2
Apple M1 Pro, 32GB
And It worked for me. It could be a memory issue. Reboot your mac and try again to see if you still have the error message.
(base) igor@macIgor ~ % ollama run deepseek-coder:6.7b-base-q5_K_M
pulling manifest
pulling 6e92e8607680... 100% ▕████▏(4.8 GB/4.8 GB)
pulling ccfee4895df0... 100% ▕████▏(13.8 KB/13.8 KB)
pulling 58e1b82a691f... 100% ▕████▏(18 B/18 B)
pulling c77ca3ce73a4... 100% ▕████▏(383 B/383 B)
verifying sha256 digest
writing manifest
removing any unused layers
success

We've made numerous improvements in memory prediction, and understanding available memory splits between GPU/system on MacOS.  I don't have a 16G macos system to verify this on, but I believe this should be fixed.  If you're still having problems running models on your 16G system, please share your server log and I'll reopen the issue.


Data dictionaries: How to handle foreign ids?

Currently, foreign ids are implicitly mapped by appending them to the data dictionary ids. For example, we have a term
Admission source in the Genomics England data dictionary, that has the official genomics england id admisorc. We assigned it, internally, the ID GE:admisorc.  The good thing about this is that it is 1) compact, i.e. does not take a lot of space, and 2) we dont need a seperate element. On the other hand, we

are making us dependent on external ID changes (what happens if an id gets changed? I mean it should not, but what if)
Have slightly idiosyncratic ID schemes across our data dictionaries (some numeric, some external)
We have to agree that external ID are generally URL encoded - which is a bit cumbersome in conjunction with CURIEs

The question is: should we introduce a new field for external ids?

@mcourtot What are your thoughts on this? Should we reuse the GE IDs in the PURLs that we're creating, or switch to numeric IDs like the other cohorts?

After our last conversation, we should probably:

Make a new column that allows mapping external ids
Generate our own IDs according to the PREFIX:000000 recipe

Yes @matentzn, please implement that.

For example https://github.com/IHCC-cohorts/data-harmonization/blob/b807eac0ec61d6eb0bc26a2d61e8cb16010d8994/data_dictionaries/gcs.owl#L208


Provision Microsoft 365 learning pathways template failed

Describe the issue
Your request to provision "Microsoft 365 learning pathways" template failed!
Please report the issue here providing the following provisioning action correlation ID: 24154e67-5dae-401c-afeb-8e0c78336926 !
Expected behavior
I was starting from scratch to deploy LP's.  Per Julie Turner, I deleted the prior M365LP's and then deleted the LP app (customlearning pkg).  Then, redeploy LP from Lookbook provisioning and it failed.
Screenshots

Details (please complete the following information):

PnP Correlation ID: 24154e67-5dae-401c-afeb-8e0c78336926
Reference Template: https://lookbook.microsoft.com/details/3df8bd55-b872-4c9d-88e3-6b2f05344239
Primary language of the target tenant: English
Are you using a Tenant Global Admin account to provision the template: YES

Additional context
I was starting from scratch to deploy LP's.  Per Julie Turner, I deleted the prior M365LP's and then deleted the LP app (customlearning pkg).  Then, redeploy LP from Lookbook provisioning and it failed.

Hi @pgdrews,
Thanks for using the Look Book site. Looking into the events log, I can see that the exception is related to the app in the App Catalog (FileNotFoundException). It looks like the provisioning engine couldn't find the app package and wasn't able to install it on the target site. This is, indeed, a wrong behavior because I can clearly see that you have the SPPKG file in your App Catalog, based on the above screenshot. I'm wondering what the reason could be. Is the user account that you used to provision LP the same that you used to look into the App Catalog and take the screenshot? Anything else that comes into your mind about permissions for your App Catalog? Thanks.

@PaoloPia appreciate the follow up.
Well, I deleted and re-provisioned several times and still had no luck, until I changed the URL of the Learning Pathways site.  Then, I proceeded to deploy the SharePoint Success Site (which I also had to use a new URL) and got them both to report as successful.  Learning Pathways appears to be working correctly, but when I open Success Site, there is an error on the administration page.

When I use the console logs in the browser for errors, this is what I see.   Any thoughts on on how to resolve?

@PaoloPia appreciate the follow up.
Well, I deleted and re-provisioned several times and still had no luck, until I changed the URL of the Learning Pathways site.  Then, I proceeded to deploy the SharePoint Success Site (which I also had to use a new URL) and got them both to report as successful.  Learning Pathways appears to be working correctly, but when I open Success Site, there is an error on the administration page.

When I use the console logs in the browser for errors, this is what I see.   Any thoughts on on how to resolve?

I suspect the issue you're having now is that you didn't complete the SharePoint Success Site provisioning steps as outlined in the templates provisioning instructions. I suspect if you follow these directions starting at step 6 that basically will add the content pack to learning pathways you should be all set. -- If you prefer video you can watch the provisioning process here.

I suspect the issue you're having now is that you didn't complete the SharePoint Success Site provisioning steps as outlined in the templates provisioning instructions. I suspect if you follow these directions starting at step 6 that basically will add the content pack to learning pathways you should be all set. -- If you prefer video you can watch the provisioning process here.

Excellent - that resolved!  Thanks Julie!
I see that if I had watched the VIDEO link for "Before you start", I would have caught that.  I'm not as much of a video watcher most times.   And, I took the assumption it was just walk through of what I already had done many times with all the other PnP templates...but clearly there was a critical step missed.
Is it possible to be more literal right after that video line to point to the directions link?  I see it is down below on the page as well under resources.  But nothing stood out that there was some required post steps.
Thanks again!!!

Excellent - that resolved!  Thanks Julie!
I see that if I had watched the VIDEO link for "Before you start", I would have caught that.  I'm not as much of a video watcher most times.   And, I took the assumption it was just walk through of what I already had done many times with all the other PnP templates...but clearly there was a critical step missed.
Is it possible to be more literal right after that video line to point to the directions link?  I see it is down below on the page as well under resources.  But nothing stood out that there was some required post steps.
Thanks again!!!


Roll Flutter from ab47f01ff173 to b007d33f3864 (11 revisions)

https://github.com/flutter/flutter/compare/ab47f01ff173...b007d33f3864
2022-08-01<EMAIL_ADDRESS>Roll Plugins from 257eacb1e2aa to a6d42f1e01d3 (3 revisions) (flutter/flutter#108738)
2022-08-01<EMAIL_ADDRESS>Roll Flutter Engine from 3cba105ed0bd to cf0db3e54687 (1 revision) (flutter/flutter#108716)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from c3e7d2ae5ca3 to 3cba105ed0bd (1 revision) (flutter/flutter#108702)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from f49102931f6f to c3e7d2ae5ca3 (1 revision) (flutter/flutter#108699)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from 64aeba82332e to f49102931f6f (1 revision) (flutter/flutter#108698)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from d418df75a406 to 64aeba82332e (1 revision) (flutter/flutter#108692)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from 88abca04183d to d418df75a406 (1 revision) (flutter/flutter#108691)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from 0093991aa1d3 to 88abca04183d (1 revision) (flutter/flutter#108687)
2022-07-31<EMAIL_ADDRESS>Roll Flutter Engine from 2555b168dda3 to 0093991aa1d3 (1 revision) (flutter/flutter#108685)
2022-07-30<EMAIL_ADDRESS>Roll Flutter Engine from 953c4349c31e to 2555b168dda3 (1 revision) (flutter/flutter#108679)
2022-07-30<EMAIL_ADDRESS>Roll Flutter Engine from b06036f11eae to 953c4349c31e (3 revisions) (flutter/flutter#108676)
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/flutter-plugins
Please CC<EMAIL_ADDRESS>on the revert to ensure that a human
is aware of the problem.
To file a bug in Plugins: https://github.com/flutter/flutter/issues/new/choose
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+doc/main/autoroll/README.md

Commit queue failed; closing this roll.


Integrate apps in SAP Build Work Zone

Hi,
Thank you for this nice step-to-step guide! I successfully deployed the application to my trial account. Now I have the use-case that I want to integrate the apps into an SAP Build WorkZone launchpad. But so far I haven't found a nice way to do this.
So my tenant subaccount looks like this:

I created a destination in the tenant subaccount pointing to the Sandbox launchpad of the SusaaS application:
URL=https\://mytenant-susaas-dev.cfapps.us10-001.hana.ondemand.com/sapsusaasuipublicflp
Name=my-susaas-launchpad
ProxyType=Internet
Type=HTTP
Authentication=NoAuthentication

In the Content Manager I added the app as following and added it to the launchpad:

When launching the application over the Work Zone service, but I have a duplicate shell header (which is logical for me):

It would be possible to hide the header by adding the following code to the application:
sap.ushell.Container.getRenderer("fiori2").setHeaderVisibility(false);

In my opinion, however, this is not a viable option in this case because the shell header would also disappear if I opened the app via the sandbox launchpad.
Is there a way to integrate the apps in the SAP Build Work Zone in a nice way? I am aware that I could provide the apps as a content provider, but that is not an option in this case, as deployment via the portal service is deprecated and it no longer works via the launchpad/work zone service as it used to with the portal service.
Kind regards,
Johannes

I have found a way to access the app via Work Zone, but I am unsure whether this is the way to go.
First, I changed the destination as following:
URL=https\://mytenant-susaas-dev.cfapps.us10-001.hana.ondemand.com/
Name=my-susaas-launchpad
ProxyType=Internet
Type=HTTP
Authentication=NoAuthentication

I also changed the integration of the app in the Content Manager:

The sapsusaasuiadminusers is the app id in the html5 repository.
Reference: Run Your Deployed HTML5 Application

Hi @thisisevanfox,
Can you remove the mock launchpad and try integrating again? Could it be the case that shell is two times rendered because  you are using already mock launchpad and actual launchpad somehow?

Hi @thisisevanfox,
Yes, indeed we pressed simultaneously.
What you did is the only way personally I can recommend from my knowledge. It is easier to maintain and I am not aware of any SAP offficial statement about the topic. (Build Workzone Multitenancy is a long living discussion)
There are of course some workarounds out there, but IMHO, they are not future-proof. So embbeding the URL is the way to go at the moment from my POV. When we have a better solution in the future about this topic, I would love to implement and document it for our community then people can make use of it.

Hi @alperdedeoglu, thanks for confirming my approach.
I'm unsure if I have to do some exploration in the topic of "content federation" like it is done for integrating S4/HANA apps in Build Work Zone (described here). Here I'm accessing the /sap/bc/ui2/cdm3/entities endpoint on the S4 system to retrieve the catalog of available applications.
I am wondering, if I could add the Susaas applications as a Content Provider in the Channel Manager somehow:

Steps on this path could be:

Move the content of the fioriSandboxConfig.js in a seperate CommonDataModel.json file (because the difference to a generated "CommonDataModel.json" is not too big)
Make this file accessible via the approuter
Add a design-time destination in the consumer subaccount pointing to the exposed CommonDataModel.json file
Add a runtime destination in the consumer subaccount pointing to the approuter (or maybe to the srv application?)
Add the new content provider (which now retrieves the 5 UI5 Apps from the repository)

Do you have any idea whether this can work or can I save myself the effort from the outset?

Hi @thisisevanfox ,
the current unfortunately completely undocumented and I would guess also unsupported solution is the development of a Launchpad Module using:
      service: build-workzone-advanced
      service-plan: standard

instead of the documented but not anymore available:
    service: portal
    service-plan: standard

You can check my sample at mta.yaml#L142. I've deployed this in my BTP Free tier and despite the service name build-workzone-advanced I have not payed anything for the service. In Build Work Zone Standard (which must be subscribed in the subscriber subaccount) the content can be embedded following: Launchpad Modules Content Providers.
Best Regards
Gregor

Hi @gregorwolf,
thanks for your suggested solution. However, as it seems that this is not an official way, I am now integrating the apps as described here  and will monitor the further development of the Work Zone so that it may support multitenancy in the future. If I understand it correctly, this influencing request is aimed precisely at this issue.
Kinds regards
Johannes


[beta] Do not update semantically equivalent lockfiles with --frozen/--locked.

A previous patch in #4684 attempted to fix this, but didn't work for the
case where the [root] crate wasn't the first crate in the sorted package
array.
Backport of https://github.com/rust-lang/cargo/pull/4714.

 Warning

Pull requests are usually filed against the master branch for this repo, but this one is against rust-1.22.0. Please double check that you specified the right target!

r? @matklad
(rust_highfive has picked a reviewer for you, use r? to override)

r? @alexcrichton
Patch applies cleanly.

:pushpin: Commit a96d7fd has been approved by alexcrichton

:hourglass: Testing commit a96d7fd6e30eb8ac60d8577ea1c6098a5d3817b8 with merge cee38cd30d16b343b13721ec813dc89eb1c1642d...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing cee38cd30d16b343b13721ec813dc89eb1c1642d to rust-1.22.0...


ValueError raised in pandas when lazy validating DataFrame with MultiIndexed Columns

Describe the bug
A ValueError is raised in pandas when a pandas.DataFrame object with MultiIndexed Columns is lazily validated (using the parameter lazy=True) by a pandera.DataFrameSchema object, and there is at least one failed check for the columns.
Running the code below, the following exception is raised:
Traceback (most recent call last):
  line 18, in <module>
    print(schema.validate(df, lazy=True))
  File "Y:\Python39\lib\site-packages\pandera\schemas.py", line 613, in validate
    raise errors.SchemaErrors(
  File "Y:\Python39\lib\site-packages\pandera\errors.py", line 87, in __init__
    error_counts, failure_cases = self._parse_schema_errors(schema_errors)
  File "Y:\Python39\lib\site-packages\pandera\errors.py", line 172, in _parse_schema_errors
    failure_cases = err.failure_cases.assign(
  File "Y:\Python39\lib\site-packages\pandas\core\frame.py", line 3699, in assign
    data[k] = com.apply_if_callable(v, data)
  File "Y:\Python39\lib\site-packages\pandas\core\frame.py", line 3044, in __setitem__
    self._set_item(key, value)
  File "Y:\Python39\lib\site-packages\pandas\core\frame.py", line 3120, in _set_item
    value = self._sanitize_column(key, value)
  File "Y:\Python39\lib\site-packages\pandas\core\frame.py", line 3768, in _sanitize_column
    value = sanitize_index(value, self.index)
  File "Y:\Python39\lib\site-packages\pandas\core\internals\construction.py", line 747, in sanitize_index
    raise ValueError(
ValueError: Length of values (2) does not match length of index (1)

Checking the line 172 in errors.py in pandera, i.e.
failure_cases = err.failure_cases.assign(
                    schema_context=err.schema.__class__.__name__,
                    check=check_identifier,
                    check_number=err.check_index,
                    column=column,
                )

It could be seen that the MultiIndexed Column with the name ("foo", "baz") , which has the type tuple, would not be interpreted as a single value by pandas, which then failed to be broadcasted to err.failure_cases and causing the ValueError from pandas during the assign method call.

[x] I have checked that this issue has not already been reported.
[x] I have confirmed this bug exists on the latest version of pandera.
[ ] (optional) I have confirmed this bug exists on the master branch of pandera.

Code Sample, a copy-pastable example
import pandas as pd
from pandera import Column, DataFrameSchema

schema = DataFrameSchema({
    ("foo", "bar"): Column(int),
    ("foo", "baz"): Column(int)
})

df = pd.DataFrame({
    ("foo", "bar"): [1, 2, 3],
    ("foo", "baz"): ["a", "b", "c"],
})

print(schema.validate(df, lazy=True))

Expected behavior
A pandera.SchemasError should be raised with the type mismatch on the column ("foo", "baz") logged, which has the value ("foo", "baz") in the column Column.
Desktop:

OS: Windows 10
Version: Python 3.9.0, with pandera 0.7.0, pandas 1.1.4 installed

Additional context
If we change the code above to
import pandas as pd
from pandera import Column, DataFrameSchema, Check

schema = DataFrameSchema({
    ("foo", "bar"): Column(int, checks=Check(lambda s: s == 1)),
    ("foo", "baz"): Column(str, name="b")
})

df = pd.DataFrame({
    ("foo", "bar"): [1, 2, 3],
    ("foo", "baz"): ["a", "b", "c"],
})

try:
    schema.validate(df, lazy=True)
except Exception as e:
    print(e.failure_cases)

The output would be
  schema_context column     check  check_number  failure_case  index
0         Column    foo  <lambda>             0             2      1
1         Column    bar  <lambda>             0             3      2

which shows that the column name ("foo", "bar") is incorrectly interpreted as a pandas.Series-like object and treated as a column object when calling the method assign from err.failure_cases.
Potential Fix
A band-aid fix would be manually broadcast the input for the column Column before assigning the column to err.failure_cases, i.e.
failure_cases = err.failure_cases.assign(
                    schema_context=err.schema.__class__.__name__,
                    check=check_identifier,
                    check_number=err.check_index,
                    column=[column] * len(err.failure_cases),
                )

which seems to have fixed the problem.

hi @peter1456, #600 should address this issue

Hi @cosmicBboy, thanks a lot!

Hi @cosmicBboy,
Sorry for not checking carefully, but seems like pandas would not broadcast properly even when the MultiIndex column names are wrapped in a list. See the following example
import pandas as pd
from pandera import Column, DataFrameSchema, Check

schema = DataFrameSchema({
    ("foo", "bar"): Column(int, checks=Check(lambda s: s == 1)),
})

df = pd.DataFrame({
    ("foo", "bar"): [1, 2, 3],
})

schema.validate(df, lazy=True)

When it is run, the following error is thrown:
Traceback (most recent call last):
  File "test_pandera.py", line 12, in <module>
    schema.validate(df, lazy=True)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandera\schemas.py", line 655, in validate
    raise errors.SchemaErrors(
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandera\errors.py", line 87, in __init__
    error_counts, failure_cases = self._parse_schema_errors(schema_errors)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandera\errors.py", line 173, in _parse_schema_errors
    failure_cases = err.failure_cases.assign(
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py", line 3695, in assign
    data[k] = com.apply_if_callable(v, data)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py", line 3040, in __setitem__
    self._set_item(key, value)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py", line 3116, in _set_item
    value = self._sanitize_column(key, value)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\frame.py", line 3764, in _sanitize_column
    value = sanitize_index(value, self.index)
  File "C:\ProgramData\Anaconda3\lib\site-packages\pandas\core\internals\construction.py", line 747, in sanitize_index
    raise ValueError(
ValueError: Length of values (1) does not match length of index (2)

It seems like pandas try to fit an list-like object in the column "as-is", and failed.
Desktop:

OS: Windows 10
Version: Python 3.8.5, with pandera 0.7.1, pandas 1.1.3 installed

Thanks again!

fixed by #622


Header/footer in timing diagrams?

Right now, it doesn't seem like schemdraw renders headers or footers in timing diagrams. For example, with the following waveJSON:
{
        "signal": [
            {"name": "CLK_A", "wave": "P.......", "period": 2},
            {"name": "CLK_B", "wave": "P.......", "phase": 1},
            {
                "name": "Align Signal",
                "wave": "0.1..0.1",
                "data": ["Start Align", "End Align"],
            },
            {"name": "Block A Output", "wave": "x.3x=x=x=x", "data": []},
            {"name": "Block B Output", "wave": "x.3x=x=x=x", "data": []},
        ],
        "edge": ["[0^:3]+[0^:7] $t_{Align}$"],
        "head": {"text": "Phase Alignment Timing Diagram"},
        "foot": {"text": "Phase alignment process between FPGA Block A and Block B"},
    }

Wavedrom renders this OK, but using schemdraw, the text at the top and bottom is missing once the diagram is rendered. Would be awesome to support this!

The head and foot parameters are implemented in aeb223d70c3647f5548983b642a7aedcdd11a01f, along with tick/tock/every for numbering waveform periods. Note using tspan in the text is not implemented at this time.


Generate shortnames based on emojis-list

Related with https://github.com/Kikobeats/emojis-list/issues/10.
Can you confirm @astoilkov that this works as you expected?

I will try it out and get back to you today.

In the new list :octocat: :octocat: is missing.

:octocat: is only available on GitHub I think.

Both libraries content this emoji: http://twitter.github.io/twemoji/2/test/preview.html


Adding time lock puzzle.

Hi,
I tried implementing the time-lock-puzzle in Go. But there is a problem which. I did not face the problem with the python implementation. When the T (# of squaring) is around 1024 the Go implementation works. But when I  increase T to around 2048 it crashes.
The problem is in line # 110 as you can see in the attached code snippet. Line # 110 is the following.
// k = c_k - a^ (2^t) mod n equation (5) from paper https://people.csail.mit.edu/rivest/pubs/RSW96.pdf
K := new(big.Int).Sub(c_k, b) // this line should decrease the size of K to 32 bytes.

The line should decrease the size of K to 32 bytes.  But when T >= 2048 it remains 256 bytes. Hence K can not be used as a key to unlock the puzzle as it only accepts keys of size 32, 24, or 12.
My guess is this is caused by integer overflow when calculating b = a^(2^T) mod n as big int is unsigned and when the most significant bit comes 1 this causes the problem.  I have been using Go’s Exp library for the exponentiations. Here is the code snippet.
b := a
p := new(big.Int).Exp(big.NewInt(2), T, nil) // p = 2^T
b.Exp(b, p , N)

I have been trying to debug it but haven’t been successful. I have attached comments to the code following the convention from the paper but not sure how helpful it would Do you have ideas on how to fix it?

Thanks for the PR! I'll aim to review sometime next week.


Feature: Allow setting the Event Hubs client Identifier (aka ClientID, InstanceID) in binding/pubsub declaration

In what area(s)?
/area runtime
/area operator
AEH Binding, AEH PubSub
Describe the feature
Problem Statement
After a rolling upgrade or restart of an application using an Azure Event Hubs binding (or pub sub), a new client identifier (a uuid/guid) is generated by default for the underlying Azure SDK Client if it is not provided (be that the golang, dotnet, java, whatever version.). This same identifier is used in blob storage metadata for checkpoint management to signify ownership by a particular client in a pool of clients (or a singular client.) This is the mechanism by which partition balancing is performed among a group of competing clients for a given consumer group. The default timeout for a lease is two minutes. A client renews its lease by updating the modified time on the placeholder blob.
Using the example of a single client bound to an event hub with 32 partitions, each time you restart, the client will slowly acquire leases on these partitions as each lease reaches the two minute timeout. Until a lease is acquired, _no messages in that partition will be processed. As far as this single client is concerned, it has no idea whether the old guid is an existing competing client or it's own former client/owner id. In my experience, it can take up to 5 minutes to reclaim all partitions with a single client in a dev environment. This is painful :/
example metadata signifying client ownership over partition 3 for event hub "device-in"

Solution
Allowing the client to have a "static" identifier means that when the client restarts, it can rapidly begin start receiving messages as it believes it already owns all the leases because the blob metadata has the same identifier.
In production scenarios, typically you would bind the identifier to the pod name in a k8s stateful set (not replica) to ensure heritage for a given client. This should be easily done via a secretRef with an environment bound secret store (or maybe there's a better way?)
References
In the Go SDK, this property seems to be aliased as InstanceID and ClientID across the client options.
https://github.com/Azure/azure-sdk-for-go/blob/sdk/messaging/azeventhubs/v1.2.2/sdk/messaging/azeventhubs/consumer_client.go#L156
Microsoft SDK quote:

It is recommended that you set a stable unique identifier for processor instances, as this allows the processor to recover partition ownership when an application or host instance is restarted. It also aids readability in Azure SDK logs and allows for more easily correlating logs to a specific processor instance

Release Note

I would suggest repeating the Microsoft SDK information, and suggesting using stateful sets and pod names as the identifier for production. A fixed identifier is very useful for dev, especially if you have multiple partitions.

RELEASE NOTE:

Bump.


Does Windows' file path length limit apply to files in the archive?

I mean how Windows has a 256 character limit on file paths. This has caused a lot of issues in the past with NW.js and I'm sure it must be the same with Electron. I wonder is using asar a workaround? I'm not sure how asar works though. If a file is requested in the archive, does it then at some point actually exist on disk with that file path?

ASAR 100% solves this issue, MAX_PATH doesn't apply

Wow cool.


Remove interface to variadic curl_easy_setopt

Fixes #11 on my machine.
It seems like everything works if Fortran is never asked to call a variadic function directly.
So I propose to write the type-specific interface on the C side instead.

Yes, I would not expect it to work in the first place.

This is nice to get it working right now.
But it's worth checking back with the GNU Fortran compiler people, if they want to support variadic C functions on ARM64 macOS. Sadly they don't seem to be on GitHub as an organisation / repository, but you seem to need to dive in some mailinglist.

In this old thread it does seem like variadic C functions are not Fortran interoperable. I’m not a 2023 Fortran standard expert (they may become standard?) but I agree with @certik that if portability is important, it’s better not using them.

Thank you!


Fix for AWS RequestLimitExceeded issue

@ashishjain14 : incrementally goes up 2, 4, 8 ,16 like that.


Unify FilteredQuerySource and SelectStatement

FilteredQuerySource only existed to make sure you couldn't pass a
query with a select clause or any other clause besides WHERE as a
target for update or delete. Instead of introducing a parallel
query type, we can instead just add the notion of a "default" select
clause.
I intentionally wanted this to be a voldemort type, so I needed to
rearrange the parameters on SelectStatement which caused a bit more
churn than I would have liked.
Close #760.

Yeah, the diff noise got a bit amplified since I decided to switch the parameters everywhere, but it would have been misleading to leave them in the old order in every impl

This was merged I just forgot to push before deleting the branch


navMenu: Folding menu when the width of horizontal mode is insufficie…

…nt for navmenu
横向模式根据ul宽度自动折叠
Please make sure these boxes are checked before submitting your PR, thank you!

[ ] Make sure you follow Element's contributing guide (中文 | English | Español | Français).
[ ] Make sure you are merging your commits to dev branch.
[ ] Add some descriptions and refer relative issues for you PR.

PR without a valid reproduction link will be closed directly.


Unifying MTU settings in ConfigMap

Have a single point of MTU definition
CNI_MTU variable will set mtu for cni as well as
FELIX_IPINIPMTU
For more control, both var can still be set individually

Description

Fixes Issue #1482
Todos

[x] Tests
[x] Documentation
[ ] Release note

@caseydavenport  squashed the commits here too.

my bad :( @caseydavenport. latest commit fixes the typo.
Thanks again for being patient with too many commits.
On Thu, Mar 29, 2018 at 10:10 AM, Casey Davenport<EMAIL_ADDRESS>wrote:

@caseydavenport commented on this pull request.
In master/usage/configuration/mtu.md
https://github.com/projectcalico/calico/pull/1770#discussion_r178122461:

@@ -28,8 +28,8 @@ packet.

Default MTU sizes
The default MTU for workload interfaces is 1500, this is to match the most
-common network MTU size.  The default MTU for the IP-in-IP tunnel device
-is 1440 to match the value needed in GCE.
+common network MTU size. The default MTU for the IP-in-IP tunnel device
+-is 1440 to match the value needed in GCE.
is this a typo? I don't think we should have a - here.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/projectcalico/calico/pull/1770#pullrequestreview-108130333,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AA_K0gHXe5RR2gaZeGDk6afHtBWE9ws5ks5tjRV1gaJpZM4SvHbE
.

@ketkulka no worries, thanks for running with this!


Test branch to see how Scala 2.11.12 performs

This may be useful when Java 8 is no longer supported since
Scala 2.11.12 supports later versions of Java
What changes were proposed in this pull request?
Change Scala Build Version to 2.11.12.
How was this patch tested?
This PR is made to run 2.11.12 Scala through Jenkins to see whether or not it passes cleanly.
Please review http://spark.apache.org/contributing.html before opening a pull request.

I'm also looking at this issue. The challenge is that one of the hacks we use to initialize the Spark
before REPL sees any files was removed in Scala 2.11.12.
https://github.com/apache/spark/blob/master/repl/scala-2.11/src/main/scala/org/apache/spark/repl/SparkILoop.scala#L109
We might need to work with Scala team to upgrade our Scala version.

Here is the issue in Scala side. https://github.com/scala/bug/issues/10913

Jenkins, test this please.

Jenkins, add to whitelist.

Jenkins, test this please

Jenkins, add to whitelist

Test build #91322 has started for PR 21453 at commit 90d3842.

Test build #91322 has finished for PR 21453 at commit 90d3842.

This patch fails build dependency tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/91322/
Test FAILed.

Scala 2.11.12 cannot be built against with current Spark, due to some method changes in REPL. We have tried internally.

I opened a PR for Scala 2.11.12 with Scala API change fix. https://github.com/apache/spark/pull/21495 Thanks.

I think we can close this one as a dup of #21495 .

Can one of the admins verify this patch?

Test build #92866 has started for PR 21453 at commit 90d3842.

Test build #92866 has finished for PR 21453 at commit 90d3842.

This patch fails Spark unit tests.
This patch merges cleanly.
This patch adds no public classes.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/92866/
Test FAILed.


Blog App - Creating a Data Model

Work Done

Created a new app and gave it a meaningful name (blog app).
Initialized my project with Git.
Made sure the project has Postgres database set up.
Built my project schema.

Created and ran the necessary migration files.
Table and column names match the ERD diagram.
Foreign keys be included.
All columns that are foreign keys have a corresponding index.

Work Done After Review

Fixed the MIT License link.

STATUS: APPROVED 👍🎯
Hello @rmiyoyo 👋
Your project is complete!  There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉
Highlights ⭐
✔license link fixed
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.

As described in the Code reviews limits policy  you have a limited number of reviews per project (check the exact number in your Dashboard). If you think that the code review was not fair, you can request a second opinion using this form.


Preparation of meeting and guide for development of dynamic model calculations

The following actions are to do, in order to prepare the meeting and the guide:

[x] #320

[x] #321

[x] #322

All goals achieved. Issue can be closed


Please recode this tool for termux

@but3k4 no! You recode this tool for termux.. and then share it on github for free..
Just to get an issue that says: please recode this tool for emacs


RELEASE 1.8 - version/release note update

See #3132

Removes release notes & replaces with STUB
Updates version to 1.8

@mandy-chessell This updates the release code ready for final testing - ready to merge once built cleanly.

@bogdan-sava could you possibly look at the changes and review. We need this before we can do the candidate build for 1.8 release
We have checks for codeowners and I likely touched one of your files in the version refactor


Formalize string - token expansion.

From an external discussion :

we need to formalize how string expansions in “file names” occur. Ideally, we don’t want this to be application specific (as this defeats the point of having a common API). As such, we need to agree at least amongst ourselves to start with, how we want to represent common path tokens such as frame number, view, etc… in a portable way. Anyone have any initial preferences? Ideally it should not predicate any specific ordering within the string (i.e some.{frame}.{view}.exr and some.{view}.{frame}.exr should be possible. An initial suggestion would be to use fmt which we already have on-hand in the library, which would result in expansions looking like the above.  This gives asset management system the flexibility to use tokens in the position/order required without having to worry about which tool they are in, and you as host authors, a one liner to use in OpenAssetIO to expand the tokens defined by the standard.

### Tasks
- [ ] Formalize/Document string variable expansion
- [ ] Utility method in core api to pack variables into strings (forward through to `fmt`, as we don't want it as a public dependency but we do want to be friendly and expose its well exercised behaviours.).

"Formalizing" in this context means moving from "just use libfmt rules" to "Use the intersection of libfmt and python formatting", update the docs for that, and build the method around that. (They should be the same anyway)


[cppgraphqlgen] Update to v4.3.0

Describe the pull request

What does your PR fix?
Updates cppgraphqlgen to the latest minor version release.

Which triplets are supported/not supported? Have you updated the CI baseline?
All, No (although it is still marked as failing in Linux because the version of GCC is not new enough)

Does your PR follow the maintainer guide?
Yes.

Yes.

Just found a downstream bug that I want to fix with a 4.3.1 release of cppgraphqlgen once I rebuilt with this version in vcpkg, so I'll cancel this PR and submit a new one with 4.3.1 once I've verified the fix and released the update.


Handicaps refactor

OK, this has been a slog and I will need a bit of a break after, but here it is.
In the words of Dylan Beattie: https://www.youtube.com/watch?v=xCGu5Z_vaps
MR Checklist:

[X] Source code updated to address issue
[X] Style and formatting applied
[X] Tests written to cover changes
[X] Docstrings included/updated in code
[x] Project documentation updated as necessary

Summary:

The handicaps code has been fully refactored into a class structure, with each scheme being a subclass of a base HandicapScheme class
Handicap table functionalities have also been brought inside a HandicapTable Class
A set of wrapper functions around the HandicapScheme classes have been written to provide easy access and preserve similar behaviour of the previous API.

This will close #2
This inadvertently also closes #60
TODO:

[x] Update examples notebook
[x] Add a function to HandicapTable to yield a string output for use elsewhere (archerycalculator).
[x] Decide how best to add the specific documentation for each HandicapScheme subclass to the documentation.

@TomHall2020 and @LiamPattinson please do take a look and let me know your comments.
If you would be happy to review please let me know and I'll add you.

Yeah would be happy to review on this. Will pull down the fork and play with it interactively too, but the new public API does look way better (good riddance HcParams!)

Had to stop my review there, don't know if it was the diffs or my browser but the github web interface just started going nuts. Most of what I've picked up on is the implicit coupling of desc_scale to handicap system specific data in the base HandicapScheme class, should be fairly easy to fix. Otherwise absolutely way hapier with the API, I can build a round and get useful information on it in a REPL so much more easily than before
from archeryutils import Round, Pass, Target
from archeryutils import handicaps as hc

t = Target("5_zone", (48, "inch"), (80, "yards"))
p = Pass(30,t)
r = Round('Test', [p,p,p])

hc.score_for_round(r, 30, "AGB")
hc.handicap_from_score(700, r, "AGB")

Much more intuitive than the previous version and I appreciate the reduced imports as well.

@LiamPattinson @TomHall2020 I have updated the docs which was the last TODO from my end.
I believe I have also addressed the points raised above in review.
If I can get closure of those and an approving review I will merge this which should unblock a number of your PRs @TomHall2020 and bring us very close to completing #49.

OK, great.
If you are happy please could you do a review with "Approve" selected @TomHall2020?
(Go to Files Changed, select green review button, add a message and then select the "Approve" radio button instead of "Comment".)
That should then unlock it for me to merge (I put branch protection rules on now that there is more than just me opening PRs).

If you are happy please could you do a review with "Approve" selected @TomHall2020? (Go to Files Changed, select green review button, add a message and then select the "Approve" radio button instead of "Comment".) That should then unlock it for me to merge (I put branch protection rules on now that there is more than just me opening PRs).

I've reviewed and approved already, but from the status bar below it looks like the repo is set to require an approving review from someone with write access, so that might be the issue you're having.

I've added my approval and I'm seeing the same issue: at least 1 approving review is required by reviewers with write access.

Thanks folks - feels great to get this one finally checked off!
@TomHall2020 if you can update your open PRs to use this (I know you already rebased one) then hopefully they can follow soon.


issue with openmpi stommel example

I am getting the following error
PermissionError: [Errno 13] Permission denied: b'/scratch/msldrift/stommelU.nc'
where /scratch/msldrift/ is my scratch space from where I launched the job on a LSFCluster.
This issue occur when I use more than one processor for the mpirun command as in mpirun -np 2 .... This error does not occur if I use mpirun -np 1 ... but that is not very useful of course. It looks like the multiple processors do not inherit read/write permissions or something like that?
To further debug I am also trying to figure put where in the example_stommel.py code the stommel[U,P,...].nc files are written?

Hmm, it may be that the two processes want to write to the same file at the same time. Note that the Stommel example first creates flow-fields in netcdf (see here).
Perhaps you could set write_fields to False on line 84 in the example_stommel.py script? Does that help?
I don't think write_fields an argument you can pass when calling the function, maybe we should implement that?

Hi @selipot, can you confirm that the change in #1291 fixes your issue?

That change seems to have fixed that one issue with the Sommel example. With the write_fields set to False I can run the Stommel example in parallel on a cluster with 5 nodes as an example. I could not do such think with my previous install, even with the write_fields set to False. So thank you for that!
But unfortunately for me, this change does not help with my own code. I get an error that seems to indicate that the n mpi processes cannot find written files etc such as FileNotFoundError: [Errno 2] No such file or directory: '8.45'. The same code runs fine for n = 1 process. Not sure where to go from here. Just in case I am sharing my code here as a gist.

Hmm, this is very strange. I don't immediately see anything in particular in your code that would trigger such an error. Could you share the full log of the run? There may be a hint there?


Kucoin 2.0 API

Fixes #2914.
Also removes the 1.0 implementation which is now completely non-functional.
This implementation is unusual in that it is a thin wrapper around the official SDK. The official SDK hasn't been published to Maven Central (yet?) so I've forked it, fixed it and republished to Maven Central from my own org for the time being.

Added removal of the existing implementation which doesn't work as of this morning.

Broken since removal of Kucoin v1.  I'm also hitting some problems with the Kucoin SDK.  Hold off on using/merging for the moment.

Added balances and open orders.
Remaining:

Create limit order
Create stop order
Create market order
Cancel order
Trade history

When will it be merged? (approximately)

1-2 weeks to completion at this rate if I don't get any help, then usually a few days for review and merge.

It's preferable if you do not use an SDK dependency and interact directly via REST requests like the rest of the modules in XChange. This will allow more people to understand and fix code in this module and not be dependent on the SDK getting updated. If that ever gets abandoned or has slow update turnaround time, the the XChange module is broken and we can't fix it easily. That fact that the SDK isn't even om Maven Central is also bad.

@timmolter: darnit.
The SDK will be on Maven Central shortly. I forked it to my own organisation and have published it from there to the OSSRH snapshots repo, heavily modified (with all my changes contributed upstream).  I was going to do a full release and pin to a release version before declaring this ready for merge, so it will be a bona fide dependency.
The code in the SDK is MIT, so someone could port most of it into XChange unmodified, but this is work I wasn't planning on when I declared my intentions ten days ago.  I don't have time for the extra work right now, much as I'd love to.
Otherwise, it's pretty much done.  Everything now works.
Would you rather wait, leave this PR open waiting for this, or merge (once I've done the Maven Central publish) and let me (or someone else) follow up with the porting work as a separate PR?
There are a few other TODOs in the code which I was going to follow up on anyway:

Some flags and options which I think should become part of the core API but are currently exchange-specific, such as TimeInForce or client-supplied ids for orders. I want to commonise these.
Apply parameter filtering to both limit and stop orders in OpenOrdersParams in a cleaner (but less compatible) way
Kucoin talks about rate limiting in the API docs but the API doesn't seem to enforce these yet, so I haven't been able to make sure these errors are propagated correctly

I could just post up four issues here and bite them off in turn.

Either way, forked SDK is now in Maven Central and I've pinned xchange-kucoin to use it.

If you have time, it be better to get rid of that dependency. But I know the world isn't an ideal place. ;)

@badgerwithagun hello, is it normal that the open field is always null ?

@badgerwithagun hello, is it normal that the open field is always null ?

The open field on what?

Ticker

Looks like at the time this was written, the Kucoin API wasn't returning an open price so it wasn't available to be mapped to XChange:
https://github.com/knowm/XChange/blob/develop/xchange-kucoin/src/main/java/org/knowm/xchange/kucoin/KucoinAdapters.java#L57
That may have changed since.


Typography:  nested inside

Multiple
 elements inside
 elements look a bit odd:

(The closing quote appears by itself, on a new line.) The raw markup is:

Note: Because the Roboto font is intended to apply to the entire page, standard "unclassed" HTML elements (e.g., heading levels, divs, paragraphs, spans, tables, etc. with no class attribute) and text modifiers (e.g., strong, em, small, etc.) will use Roboto, while also retaining their inherent and/or inherited characteristics.

Also note that MDL typography provides some automatic adjustments based on its display environment. For example, the body-1 style renders at 14px on a mobile device, but 13px on a desktop. You need not do anything to activate these self-modifiers; they are built into the MDL styles.

This is from http://mdl-staging.storage.googleapis.com/styles/index.html.

I think this is still an issue:

blockquote p {
  display: inline;
  line-height: 1.35;
}

seems to take care of a single nested paragraph

This isn't an MDL problem. Blockquote is only defined through the reset. Otherwise we aren't touching it for any component. So you need to modify it as-needed for your site. Nothing we can nor should do about it.

As far as I can tell the blockquote styling is defined in the _typograpy.scss by the typo-blockquote  mixin.

oh huh, that is interesting. As far as I know there is nothing defined by MD where we need to do that... That is something to figure out then for 2.x to fix. Thanks for pointing that out @remkoboschker.


Unable to Rename non local Functions or variables

When declaring non local Functions as shown below, Or non local variables, you are unable to use F2 Rename to rename the function and or any references

I have a local fix creating a new FindGlobalReferences Luau::AstVisitor and a new findGlobalReferences function inside of LuauExt.cpp which is used as a fallback because non local types have some sort of discrepancy when it comes to exprOrLocal inside of the Rename Operation, It was a bit hacked together so i don't want to open a Pr with it but I could provide my source as a starting point for a fix

I have a local fix creating a new FindGlobalReferences Luau::AstVisitor and a new findGlobalReferences function inside of LuauExt.cpp which is used as a fallback because non local types have some sort of discrepancy when it comes to exprOrLocal inside of the Rename Operation, It was a bit hacked together so i don't want to open a Pr with it but I could provide my source as a starting point for a fix

Thanks for the info! Will try to take a look this weekend


version 0.2.1 broken for python 3.7 (jira)

Hello,
Summary: python3.7+elastalert+python jira1.x(elastalert dependency) are incompatible, jira 2.x brings compatibility with python 3.7 so this dependency version might be needed to be updated.
And in detail:
New elastalert versions using python3 won't run with python 3.7 (but works with python 3.6).
Is seems caused by dependent python jira library (currently jira>=1.0.10,<1.0.15) that is incompatible with python 3.7 (see https://github.com/pycontribs/jira/issues/618).
This issue has been fixed since jira package version 2.0.0, so I guess jira needs to be updated (I have compiled elasticsearch with python 3.7 and jira 2.0.0, and it seems to work, but as I don't use jira I cant test elastalert-jira integration...)
Best regards

I can confirm that there is an issue with Jira and the async keyword for python3.7. Forcing the upgrade to Jira 2.0 displays a warning about incompatible version, but elastalert seems to work fine with version 2.0 of Jira.

@ex0ns when you say "but elastalert seems to work fine with version 2.0 of Jira." what testing did you do specifically?

Also I ran into this issue as well when running elastalert -h - upgrading jira to v2 fixed it

I'm still getting this error with jira upgraded to v2

Made a workaround by editing my /home/pi/.local/lib/python3.7/site-packages/elastalert/alerts.py
Changing lines:
  26 from jira.client import JIRA
  27 from jira.exceptions import JIRAError

to:
  26 #from jira.client import JIRA
  27 #from jira.exceptions import JIRAError
  28 JIRAError = RequestException

That way Jira gets disabled, which is good enough to me.

I have the same problem. Here is a simple Dockerfile:
FROM balenalib/raspberrypi3-debian:latest

RUN apt-get update -y && \
    apt-get install curl telnet net-tools wget python3 python3-pip -y && \
    pip3 install elastalert

CMD ["elastalert", "--debug", "--verbose", "--config /config.yaml"]

And here is an extract of my docker-compose file:
  elastalert:
    image: myproject/elastalert
    container_name: myproject_elastalert
    build:
      context: docker/elastalert
      dockerfile: Dockerfile
    volumes:
      - ./elastalert/elastalert/config.yaml:/config.yaml:z
      - ./elastalert/rules:/rules:z
    restart: always

The Python version installed by the apt command on the docker build:
The following additional packages will be installed:
  libcurl4 libexpat1 libmpdec2 libpcre2-8-0 libpython3-stdlib
  libpython3.7-minimal libpython3.7-stdlib mime-support python-pip-whl
  python3-distutils python3-lib2to3 python3-minimal python3.7
  python3.7-minimal

When I start a container, here is the error I got:
myproject_elastalert       | Traceback (most recent call last):
myproject_elastalert       |   File "/usr/local/bin/elastalert", line 6, in <module>
myproject_elastalert       |     from elastalert.elastalert import main
myproject_elastalert       |   File "/usr/local/lib/python3.7/dist-packages/elastalert/elastalert.py", line 29, in <module>
myproject_elastalert       |     from .alerts import DebugAlerter
myproject_elastalert       |   File "/usr/local/lib/python3.7/dist-packages/elastalert/alerts.py", line 26, in <module>
myproject_elastalert       |     from jira.client import JIRA
myproject_elastalert       |   File "/usr/local/lib/python3.7/dist-packages/jira/__init__.py", line 10, in <module>
myproject_elastalert       |     from jira.client import Comment  # noqa: E402
myproject_elastalert       |   File "/usr/local/lib/python3.7/dist-packages/jira/client.py", line 225
myproject_elastalert       |     validate=False, get_server_info=True, async=False, logging=True, max_retries=3, proxies=None,
myproject_elastalert       |                                               ^
myproject_elastalert       | SyntaxError: invalid syntax
myproject_elastalert exited with code 1

It seems connected to this issue that seems to have been fixed on July 2018. Maybe it's time to upgrade the python jira module version ?
For now I'll try the @goferito workaround on my Dockerfile because I don't need to work with Jira.
Thanks in advance.


[Question] Can we check performance issues for multiple elements at same time ?

From gif i dont think there is multi element select feature so asking here like if there is any plan to add feature where we can select multiple elements and let this project scan for performance related issue

In the future we will probably implement this. Contributions welcome till then!


Throw a better exception on error

Currently whenever impersonation cannot be performed / completed an System.ApplicationException is thrown with the underlying error code only available inside the generic string.. which makes it quite hard from a developer point of view to find out what exactly is wrong and handle it appropriately.
It would be neat to get the underlying cause when using the library, i.e. via throwing a Win32Exception instead (I'll send over a PR shortly).

While I agree that it would be good to have more direct access to the error reason, I think throwing a Win32Exception is the wrong way to go about it.  That still requires the end-user to have knowledge of the integer error codes.  Also, it would be a breaking change for those that are already implementing it and catching ApplicationException.
Perhaps a better plan would be to include an enumeration of errors, and a custom exception class that provides the enumeration.  If the exception class inherits ApplicationException, then it would be a non-breaking change.
public class ImpersonationException : ApplicationException
{
   // ctor...

   public ImpersonationError Error { get; private set; }
}

public enum ImpersonationError
{
  // ...
}

Of course, we would need to research all of the possible error codes that could be returned, but I think it is appropriate to do that here, rather than asking the consumer of this library to figure them out.

Hi @mj1856 the neat thing about Win32Exception is/was that it does resolve the Windows Error codes automatically - i.e. in case of incorrect username or password (error code 1326), the Win32Exception does include the appropriate, human-readable and localized error .Message.
Mapping all the possibilities 1326, 1328, 1329, 1330, ... to enums / custom error & localized messages is quite an effort.
So if you want to roll your own Exception I'd personally be happy with a mere int .Error, .ErrorId or .ErrorCode in it.

Interesting.  I wasn't aware of that little tidbit.  Thanks!
I'm now debating on whether it's more important to not break compatibility, or to get the error message out correctly.  There are about 11,000 downloads of this package on Nuget, and we don't have a very well defined communications channel to announce breaking changes.  So I can see folks getting a nasty surprise if they're catching ApplicationException and it stops working after an upgrade.
Here's an idea that might solve both concerns.
public class ImpersonationException : ApplicationException
{
    public ImpersonationException(Win32Exception win32Exception)
        : base(win32Exception.Message, win32Exception) { }

    public int ErrorCode => ((Win32Exception)InnerException).ErrorCode;
}

That allows the error code to easily be retrieved, uses the message from the OS, and the caller can get at the Win32Exception via the InnerException property.
It does mean that anyone parsing the error code out of the existing message string would still have a breaking change, but I think that's less critical than missing the exception entirely.
What do you think?

Looks absolutely fine (actually quite good) to me 👍 Regarding the remaining issue of the actual .Message content change & users potentially parsing the error code out etc: you could also bump the major version of the NuGet package to 2.x.
But either way - it does look good that way!

Yep. I'll do that and mark it 2.0.0 just to be strictly SemVer compliant.

👍

Nice, thanks @mj1856!

Released 2.0.0.  LMK if you encounter any difficulties.
And thanks!


Audio doesn't play in Chrome/Safari

Hi,
First of all, thanks for this magnificent library. I really like how it works and I used in several projects. Thank you so much guys.
Nevertheless, I have a weird problem that I'd like to discuss with you to see if there's any solution I can apply:
I'm doing a functionality to play an audio (located in my server), it works fine and the audio gets played properly sometimes but there a times where the audio just doesn't get played. I click on "play" and the audio isn't moving.
This is weird problem I've detected in Chrome and Safari but on Firefox it works fine.
This is an screenshot of what is happening when I play the audio, as you can see the last request for the audio is "in Pending" forever.

I also realized that this happens with audio file like music (3-4 minutes) but if the audio is short it works just fine)

I hope you guys have any clue why this could be happening, I did a reasearch and I wasn't the first person with this problem. Thank you for your help!
Regards,

I seem to be having somewhat of a similar issue as well, but more so concerning Safari (testing on v9 on OSX El Captain).
The audio plays well in Chrome, Firefox, IE8-10, but then in Safari the audio always seems to take a bit longer even load then play the audio — as if the audio was having to be preloaded in it's entirety before actually playing. Checking the ME website, the audio element does the same thing as well.
Anybody else have this same issue?


[Bug report] Webpack bundler has issues packing

Description
Starting from beta.51, it seems that webpack can not correctly resolve packages (or perform a much stricter esm check in all libraris)
So that a lot of 3rd party pacakges are triggering issues.
Meanwhile older versions and vite is not affected.
Reproduction
https://github.com/Mister-Hope/comment-bug-report
Giscus is not publishing any new versions for months, and it's all been working well, also the lit and giscus package is not broken, all providing standard esm.
Used Package Manager
pnpm
System Info
Cannot output

will you check this when you have time? A normal webpack project with same deps doesnot have issues like this, so I would prefer this is a webpack configure issue. @meteorlxy


Use rel="noopener" on backer links (possible security risk with some sketchy websites)

Summary
Hi there! I noticed that you list financial backers on your homepage (which is awesome by the way) and even allow them to link to their own websites — but as of now you have links to a few dozen random sites (and some pretty sketchy ones [1] [2] [3] [4] to be blunt) without using rel=noopener which is an understated security risk. @mathiasbynens does a better job of explaining/demonstrating this than I could ever do here: https://mathiasbynens.github.io/rel-noopener/
It might be a good practice to add this to all external links to be super safe, but I've only added it to the links to lower-tier backers that are pulled automatically from Open Collective.
(I'd probably suggest removing these links all together, as generous as they are, or just linking to Open Collective profiles, or adding a disclaimer that Jest/Facebook doesn't endorse the content of these sites... but that's probably a bigger discussion?)
Thanks!
Test plan
Ran yarn start and all seems good, but this is my first contribution here so please let me know if I'm missing anything. :)

Codecov Report

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

@@           Coverage Diff           @@
##           master    #8944   +/-   ##
=======================================
  Coverage   64.23%   64.23%
=======================================
  Files         276      276
  Lines       11700    11700
  Branches     2864     2864
=======================================
  Hits         7516     7516
  Misses       3552     3552
  Partials      632      632

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 736edd2...94ef5d2. Read the comment docs.


Not working with Typescript-Vue

When using your code in the Typescript version of vue i get following error:
[Vue warn]: Failed to mount component: template or render function not defined.
found in
---> <VueTouchKeyboard> [...]

also, there are no typings for use with TS

Confimr same bug

Same bug.