fix: Reduce the time_sleep length in service_authorizations.tf

Description
Reduce the time_sleep length in service_authorizations.tf #437
Types of changes in this PR
Changes that affect the core Terraform module or submodules

[ ] Bug fix
[ ] New feature
[ ] Dependency update

Changes that don't affect the core Terraform module or submodules

[ ] Examples or tests (addition or updates of examples or tests)
[ ] Documentation update
[ ] CI-related update (pipeline, etc.)
[ ] Other

Release required?
Identify the type of release. For information about the changes in a semantic versioning release, see Release versioning.

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content
If a release is required, replace this text with information that users need to know about the release. Write the release notes to help users understand the changes, and include information about how to update from the previous version.
Your notes helps the merger write the commit message for the PR that is published in the release notes for the module.

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

Merge actions for mergers

Use a relevant conventional commit message that is based on the PR contents and any release notes provided by the PR author. The commit message determines whether a new version of the module is needed, and if so, which semver increment to use (major, minor, or patch).
Merge by using "Squash and merge".

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

GitHub release
v3.8.3

Your semantic-release bot :package::rocket:


Commander fix for passed in elves

This is a fix for a regression that caused an exception to be raised when using the --elf argument with pyocd commander. Thanks to @saagit for the fix. Also includes a test that reproduces the issue and another small fix.
Closes #969

/morph test

/morph test

/morph test

/morph test

/morph test

/morph test


how play video with alpha channel

I want play a video with alpha channel,
can i set texturevideoview background transparent ?
Thank you.

Never tried it out, but just give it a go and try it! You may use the sample app as quick prototype and report back your findings 😄


Add DynamicRatio

This addresses https://github.com/s0up4200/redactedhook/issues/24 to update the minratio in the config.toml file if the user's new ratio has increased and the user desires to race their ratio up.

Hey @dsrtusr88! Any plans on continuing on this? 😃


DUTCH NATIONAL FLAG ALGORITHM (DNF SORT)

Description 📜
This Simple Sorting Algorithm is worked upon any Array that contains elements of only 3 types of integer values that are 0,1,2. It sorts the elements
in Ascending Order. I am going to explain a very easy optimized approach to solve this.
Fixes #4552

Type of change 📝

[ ] Au#dio (Should be in mp3 format Includes speech clarity, Concise ,Low distortion)
[ ] Vi#deo (Animations, screen-recordings, presentations and regular explanatory films are all possibilties etc)
[X] Doc#umentation (Content Creation in the form of codes or tutorials)
[ ] Other (If you choose other, Please mention changes below)

Domain of Contribution 📊

[ ] Android Dev #(Flutter)
[ ] Android Dev #(Java)
[ ] Android Dev #(Kotlin)
[ ] Backend Dev #(Java)
[ ] Backend Dev #(.NET)
[ ] Backend Dev #(PHP)
[ ] Backend Dev #(Python)
[X ] C/#CPP
[ ] Competitive #Programming
[ ] Cyber #Security
[ ] DS#A
[ ] Data#base
[ ] Datascience with #Python
[ ] Datascience with #R
[ ] Frontend Dev #HTML/CSS/JS
[ ] Frontend Dev #React/Angular/Vue
[ ] Go#lang
[ ] Interview #Prep
[ ] Java_#Domain
[ ] Java#Script
[ ] ME#RN
[ ] Machine #Learning
[ ] Open #Source
[ ] Python_#Domain
[ ] Ru#st
[ ] Statis#tics
[ ] UI/#UX

Checklist ✅

[ X] I follow Contributing Guidelines & Code of conduct of this project.
[ X] I have performed a self-review of my own code or work.
[X ] I have commented my code, particularly in hard-to-understand areas.
[X ] My changes generates no new warnings.
[X ] I'm GWOC'21 contributor

Screenshots / Gif (Optional) 📸

/assign


Improve Kazari design before launch

Some design twinkering is needed to launch the first version of Kazari:

[ ] Update CSS so the button bar of Kazari correctly attaches itself to the code snippets divs (without any padding as now) (see attachment).
[ ] Avoid Kazari button bar to change paragraphs coming after it (see attachment).
[ ] Take current highlight.js color scheme and apply it to the Kazari button bar.
[ ] Use the same color scheme for the CodeMirror modal editor if possible.


Add Nav extensions off Page types

Something like this.
public static class Extensions
{
    public static async Task<INavigationResult> NavigateAsync(this Page page, string name)
    {
        var nav = page.Frame.GetNavigationService();
        return await nav.NavigateAsync(name);
    }
}

Changed my mind. Terrible idea.


Add F# syntax highlighting.

Fixes #467.

This is derived from the Ionide TextMate grammar; I had to simplify two of the comment definitions slightly because that grammar was using a "while" key that Sublime doesn't know about, but it's otherwise the same.


Dashboard 2.0: Consider maintaining the GraphQL schema in DSL instead of JSON

Currently we use python manage.py graphql_schema to save the schema in JSON format. Most tools can't consume this format so it's useless for features like editor IntelliSense. It being JSON also means it's almost impossible to tell what changed when reviewing a pull request.
I suggest using a dedicated tool to dump the schema in GraphQL DSL format instead. It's text and it's easily diffable during review plus it can be used together with tools like gql to get autocomplete in IDEs. The main downside is that external tools require the server to be running before the schema can be generated.
Potential candidates:

graphql-cli
get-graphql-schema

GraphQL-Core provides the print_schema utility that takes GraphQLSchema and returns str with schema's SDL. I'll PR with management command printing SDL on stdout for us to print in terminal or redirect to file.


Add documentation on how to use URL pathname in GraphQL variable value

This is a follow-up ticket of #4030. I basically have the following situation:

I am using Apollo
I am using Redux
I am using GraphQl
I have a GraphlQL query that needs the current URL pathname as variable

So, in my index page component I have the following export:
export default connect()(graphql(pageData, {
  options: props => {
    return {
      variables: {
        currentPath: props.url.pathname
      }
    };
  }
})(Index));

So I need props.url.pathname in order to execute my query. However, by default this is not provided. So I had to change my _app.js file to the following:
import App, {Container} from 'next/app';
import React from 'react';
import withReduxStore from '../hoc/withReduxStore';
import withApolloClient from '../hoc/withApolloClient'
import {ApolloProvider} from 'react-apollo';
import {Provider as ReduxProvider} from 'react-redux';

// Manual app container necessary for Redux & Apollo
class AppContainer extends App {
  render() {
    const {Component, pageProps, reduxStore, apolloClient, url} = this.props;
    const newProps = {
      ...pageProps,
      url
    };
    return (
      <Container>
        <ApolloProvider client={apolloClient}>
          <ReduxProvider store={reduxStore}>
            <Component {...newProps} />
          </ReduxProvider>
        </ApolloProvider>

      </Container>
    )
  }
}

export default withApolloClient(withReduxStore(AppContainer));

And my with-redux.js file to the following:
import App, {Container} from 'next/app';
import {Provider} from 'react-redux';
import {initStore} from '../store/common';

const isServer = typeof window === 'undefined';
const __NEXT_REDUX_STORE__ = '__NEXT_REDUX_STORE__';

function getOrCreateStore(initialState) {
  // Always make a new store if server, otherwise state is shared between requests
  if (isServer) {
    return initStore(initialState)
  }

  // Store in global variable if client
  if (!window[__NEXT_REDUX_STORE__]) {
    window[__NEXT_REDUX_STORE__] = initStore(initialState)
  }
  return window[__NEXT_REDUX_STORE__]
}

export default App => {
  return class Redux extends React.Component {
    static async getInitialProps(appContext) {
      const reduxStore = getOrCreateStore();

      // Provide the store to getInitialProps of pages
      appContext.ctx.reduxStore = reduxStore;

      const url = {
        asPath: appContext.ctx.asPath,
        pathname: appContext.ctx.pathname,
        query: appContext.ctx.query,
      };
      let appProps = {};
      if (App.getInitialProps) {
        appProps = await App.getInitialProps(appContext)
      }
      return {
        ...appProps,
        url,
        initialReduxState: reduxStore.getState()
      }
    }

    constructor(props) {
      super(props);
      this.reduxStore = getOrCreateStore(props.initialReduxState)
    }

    render() {
      return <App {...this.props} reduxStore={this.reduxStore}/>
    }
  }
}

Note that in both cases, I'm forwarding the url property as property to the actual component. It took a lot of time until I found out how I could use the url in the query variable, that there's an option to specify a callback instead of an object and basically it was only possible due to #4030.
So, my request is: Please include this in the examples or add a more detailed documentation in the examples around GraphQL mit Redux/Apollo. I think these are very common things and it would bring a big benefit to all involved people.
Since there's so much flexibility regarding the tools that can be used, it's hard to know the exact integration steps into an existing environment. For example, the next step in my case would be to integrate react-i18next which will probably be a pain since there's no example for GraphQL, Apollo, Redux and react-i18next. And every information you describe, like the one I'm requesting, helps!

So, my request is: Please include this in the examples or add a more detailed documentation in the examples around GraphQL mit Redux/Apollo. I think these are very common things and it would bring a big benefit to all involved people.

You can send a pull request 😄


Still error on npm run buil-dev and gulp build

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Framework7 Version: EXACT RELEASE VERSION OR COMMIT HASH, HERE.

Live Link or JSFiddle/Codepen: PREFERABLY (IF YOU WANT YOUR ISSUE TO BE RESOLVED ASAP). You can start from forking one of the templates: iOS JSFiddle/Codepen, Material JSFiddle/Codepen

What you did
EXPLAIN WHAT YOU DID, PREFERABLY WITH CODE EXAMPLES, HERE.
Expected Behavior
EXPLAIN WHAT IS TO BE EXPECTED, HERE.
Actual Behavior
EXPLAIN WHAT IS ACTUALLY HAPPENING, HERE.
P.S. Remember, an issue is not the place to ask questions. You can use Stack Overflow
for that or join the #framework7 channel on irc.freenode.net, where we will be more
than happy to help answer your questions.
Before you open an issue, please check if a similar issue already exists or has been closed before.

Changed package.json but still getting error on npm run build-dev
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/usr/bin/npm', 'run', 'build-dev' ]
2 info using<EMAIL_ADDRESS>3 info using<EMAIL_ADDRESS>4 verbose run-script [ 'prebuild-dev', 'build-dev', 'postbuild-dev' ]
5 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>6 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>7 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle true
8 verbose lifecycle<EMAIL_ADDRESS>PATH: /usr/lib/node_modules/npm/bin/node-gyp-bin:/home/anton/Framework7/node_modules/.bin:/opt/swift/usr/bin:/home/anton/.cvm:/home/anton/.npm-global/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/bin:/sbin:/usr/java/jdk1.8.0_144/bin
9 verbose lifecycle<EMAIL_ADDRESS>CWD: /home/anton/Framework7
10 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c', 'cross-env NODE_ENV=development gulp build' ]
11 silly lifecycle<EMAIL_ADDRESS>Returned: code: 1 signal: null
12 info lifecycle<EMAIL_ADDRESS>Failed to exec build-dev script
13 verbose stack Error<EMAIL_ADDRESS>build-dev: cross-env NODE_ENV=development gulp build
13 verbose stack Exit status 1
13 verbose stack at EventEmitter. (/usr/lib/node_modules/npm/lib/utils/lifecycle.js:289:16)
13 verbose stack at emitTwo (events.js:125:13)
13 verbose stack at EventEmitter.emit (events.js:213:7)
13 verbose stack at ChildProcess. (/usr/lib/node_modules/npm/lib/utils/spawn.js:40:14)
13 verbose stack at emitTwo (events.js:125:13)
13 verbose stack at ChildProcess.emit (events.js:213:7)
13 verbose stack at maybeClose (internal/child_process.js:927:16)
13 verbose stack at Process.ChildProcess._handle.onexit (internal/child_process.js:211:5)
14 verbose pkgid<EMAIL_ADDRESS>15 verbose cwd /home/anton/Framework7
16 verbose Linux 3.10.0-693.2.2.el7.x86_64
17 verbose argv "/usr/bin/node" "/usr/bin/npm" "run" "build-dev"
18 verbose node v8.5.0
19 verbose npm v5.3.0
20 error code ELIFECYCLE
21 error errno 1
22 error<EMAIL_ADDRESS>build-dev: cross-env NODE_ENV=development gulp build
22 error Exit status 1
23 error Failed at the<EMAIL_ADDRESS>build-dev script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
and gulp build
[anton@user-xp Framework7]$ gulp build
module.js:529
throw err;
^
Error: Cannot find module 'gulp-jade'
at Function.Module._resolveFilename (module.js:527:15)
at Function.Module._load (module.js:476:23)
at Module.require (module.js:568:17)
at require (internal/module.js:11:18)
at /home/anton/Framework7/gulpfile.js:7:16
at Object. (/home/anton/Framework7/gulpfile.js:589:3)
at Module._compile (module.js:624:30)
at Object.Module._extensions..js (module.js:635:10)
at Module.load (module.js:545:32)
at tryModuleLoad (module.js:508:12)
[anton@user-xp Framework7]$

Solved this, after changing package .json and running npm install, you may also have to run
npm install (the following)
gulp-jade
gulp-pug
gulp-tap
gulp-concat
jshint gulp-jshint --save -dev
jshint-stylish

looks like you did it in wrong branch. There is no such dependencies in v2

In package.json ?
"dependencies": {
"dom7": "^2.0.0",
"gulp-concat": "^2.6.1",
"gulp-jade": "^1.1.0",
"gulp-pug": "^3.3.0",
"gulp-tap": "^1.0.1",
"jshint-stylish": "^2.2.1",
"template7": "^1.3.0"

gulp build
Strings must use singlequote.
line 2261  col 58   Too many errors. (12% scanned).

You are doing something wrong.


Expose More of the API

I'm not sure how much of an undertaking this would be.
Idea is basically exposing more of the underlying API.
One way to maybe go about this is to just expose a get and set for certain options at the top level of the various elements (workspace, panel, and components).
End result being something like:
Workspace.panels.set("left", "git")
or
Workspace.panel[pos].get("is_open")
(not really sure the best way to handle it, but I figure sanitizing user input is probably needed)
This would allow for a much more script-able environment.
Few ideas where this would be nice:

Map swapping left and right panels without needing the select UI
Check if a panel is open so user can do some related function if desired
Insert/remove components from a group on-the-fly
New named terminal running a specific command, like how the commit functionality works

Just thoughts right now! Let me know what you think.

@ldelossa If you think this is a good idea I was thinking of working on it?

Before writing out a new API surface can you explain rather what features/scripting ability youd like in detail?
Im wondering if the things you may want to accomplish are available, but via different apis that you havent quite explored yet.

The only two things that cant be done is:
Insert/remove components from a group on-the-fly
New named terminal running a specific command, like how the commit functionality works
which dont seem to warrant a new API surface? They are just desired features.

Yeah I agree, those don't really need a completely new API surface.

Sorry for the super late response. I think I just hadn't explored as much. The new named terminal part would be fantastic, but shouldn't need to expose much, just added on to the current route I think:

No args is a regular term, additional named args (name=somename cmd=somecommand) for a specific command term.
Leaving off the name uses the command path as the name.

I can open a separate issue for that and we can discard this one.

@distek sounds good.


Edit Main Menu

How i can edit MainMenu ? For example : I don't want to remove table option , change color and search button . Is there any solution using props for this ?

Since you have already read the doc, you should know whether there are props for that or not.

What are the advantages of creating countless props instead of using CSS?

You can create a PR to svelte-jsoneditor, it would certainly be nice to customize the menu in a treeshakable way.


Show placeholder text properly when clearOnBlur: false

Added clearOnBlurPlaceholder option to assist with #105
Previous behavior: When clearOnBlur is set to false, an empty input displays the empty mask instead of the placeholder, even when using the ui-mask-placeholder attribute.
New behavior: When clearOnBlur is set to false, and clearOnBlurPlaceholder defaults to false, the previous bahavior is kept. If clearOnBlurPlaceholder is set to true, an empty input displays the placeholder text instead of the empty mask.

For same reason SauceLabs is not passing Firefox and Safari tests while passing Chrome and IE. All unit tests are passing as expected.
I apologize for submitting this failling PR, as I've never used SauceLabs before and this is really my first PR for an OpenSource project. I'm probably doing something really naive but can't figure out what it is.
Any help would be pretty much appreciated.
Thanks

I just closed and reopened the PR and the tests passed

I figured what I was doing wrong. I ran gulp release --patch before committing my changes and generated an useless tag, than committed my changes and pushed the two commits to master. Already deleted wrong tags and generated the correct 1.6.9 tag. It's all fixed now.
I'm sorry about it.

@wanderleypanosso There is no need to actually create a release tag when creating a PR. I did it once before as well but the maintainer will do it for you if your changes need a version bump. Could you make a single commit for your changes, excluding the dist files (mask.js and mask.min.js) as those get generated during the ci and release builds anyway, without the release commits and push those?

@lukepfeiffer10 Thank you for your help, it's now only one commit ahead.

@wanderleypanosso No problem.

Thanks everybody, released as 1.7.0.


Access denied when trying to download

Im getting an error saying "Access Denied" whenever i try to refresh the downloader. Did i forget to enable some permission?

I just realized that my region code is not well known? There are a couple people with OYN codes that don't see their results anywhere.

Nevermind, I got it working. If you have the code "OYN", use your service provider software version to find 3 of the same code afterward. For example, mine was ATT/ATT/ATT. You may also need to put a 1 after your model


Steering Wheel support

Steam VR 2.0 does not recognise my Thrustmaster TX wheel and pedals when trying to set up bindings. Will this be available at some point?

This seems more like an OpenVR feature request. You'd be better served at the repo here: https://github.com/ValveSoftware/openvr


Curve liquidation bot epic

Reviewing Curve's liquidation scripts

https://www.notion.so/volumefi/EPIC-07-21-23-Curve-liquidation-bot-53dfb2e553ea4cb5b5c7f84942143e56

Closing as agreed Lending Bot as priority for dev/rev/Curve.


support authentication methods other than username/password

the first version (#25) only introduces username/password authentication (easiest to implement & test), however opensearch offers various other authentication options (see the documentation) and we should support all of them eventually.
this issue should be used to define how this should be implemented and either do it directly for all of them (unlikely) or raise follow-up issues for the different authentication options to be implemented later on (with a clear way forward for them).

At the moment, we provide HttpClientConfigCallback / HttpAsyncClientBuilder to allow configuring any aspect of the underlying client(s), including other authentication methods if supported. My concern regarding baking everything into the client itself may not be feasible - there are tons of different LDAP / SAML / OpenID / OAuth / JWT / ... libraries there, we cannot support all nor force to use one.

e.g. for JWT support we need to be able to register an HttpRequestInterceptor here:
https://github.com/liquibase/liquibase-opensearch/blob/3fd69aa33ded1653f3c24eced4dc219449ebc653/src/main/java/liquibase/ext/opensearch/database/OpenSearchConnection.java#L165
@filipelautert: what would be the canonical way to attach random things at runtime here? the liquibase API seems to be largely based on string-based configuration and not using injection, i.e. i can't just use the spring-way of injecting things, defining defaults in their absence, etc.


Error codes not exposed in Python exceptions

I have a Go GRPC server that returns an error with an Unauthorized code.
type BlobService struct {
}

func (bs *BlobService) Store(c context.Context, r *Request) (*Response, error) {
	return nil, grpc.Errorf(codes.PermissionDenied, "Not authorized")
}

When calling this server from Python, the client raises a NetworkError which doesn't have the error code attached.
try:
    client.Store(blob_pb2.Request(), 1)
except:
    e = sys.exc_info()[0]
    print e.message
    print e.args

How do I access that error code?
All code is here https://gist.github.com/kyleconroy/9c2ba448d46f2ec93900#file-client-py

Are there not e.code and e.details available to you as well as e.message and e.args?

e.message and e.args are both empty, but e.code and e.details are populated. Sorry for the report!

@nathanielmanistaatgoogle It's still perhaps odd that we're not filling in e.message and e.args, though, isn't it?

@soltanmm it may or may not be odd but it's certainly a place where we aren't being as helpful as we could be. I'll try to get to this in the next few days; @dhermes just hit his head against it too.


DRY  IrInterfaceMethodCall and  static call

IrInterfaceMethodCall.emitMethodCall and IrStaticCall.emit should be DRYied.

Done by #92


Bug fixes / context refactor

Fixes #16
Before:

After:

Also includes fixes:

No more using github.com/pkg/errors, instead we just use the standard library errors package with fmt.Errorf.

fixes #31

Adds context and context.WithTimeout to allow drivers to define a timeout based on the data source settings.

fixes #28

This does include a breaking change because of the new function on the interface.

LGTM. I'd be great to have more tests but don't want to block this PR for that.

I'm with you but I think I want to do some refactoring to make this more testable first :see_no_evil:


[REEF-905] Increase timeout for GroupCommunicationMessageCodecTest

This PR increases the timeout of two testcases from 100ms to 1000ms
in order to prevent failures on slow machines.
JIRA:
REEF-905
Pull Request:
This closes #

I'll merge this

Thank you!


Make both home page and case detail page pull the real images

Currently, the home page uses grey placeholders for the images, and the detailed pages uses fake images.  Let's use the real images that we have.
Background:
The case/method/etc. records have fields which include filenames (e.g. "Jp00123.JPG").  The images that these correspond to have been dumped in the s3 bucket called assets.participedia.xyz, meaning that they're available at http://assets.participedia.xyz.s3.amazonaws.com/
First step is to in each both the search results view and the case detail view, extract the relevant filenames, and create the right URL to those assets in the rendering.

It looks like there might have been a problem when transferring some of the images.
Some cases could be related to spaces in the original image filename but others are not showing the existing lead_image for no particular reason, as far as I can tell.
Examples:
Case id 468
http://participedia.net/sites/default/files/styles/medium/public/agenda21 .jpg
http://assets.participedia.xyz.s3.amazonaws.com/agenda21 .jpg [not working]
Case id 485
http://participedia.net/sites/default/files/styles/medium/public/800px-2007_07_Belgium_Brussels_06_(cropped)-1.jpg
http://assets.participedia.xyz.s3.amazonaws.com/800px-2007_07_Belgium_Brussels_06_(cropped)-1.jpg [not working]

Ah that's annoying. I'll check what script I used to pull the images.
On Thu, Oct 27, 2016, 1:14 AM Andrea Del Rio<EMAIL_ADDRESS>wrote:

It looks like there might have been a problem when transferring some of
the images.
Some cases could be related to spaces in the original image filename but
others are not showing the existing lead_image for no particular reason, as
far as I can tell.
Examples:
Case id 468
http://participedia.net/sites/default/files/styles/medium/public/agenda21 .jpg
http://assets.participedia.xyz.s3.amazonaws.com/agenda21 .jpg [not
working]
Case id 485
http://participedia.net/sites/default/files/styles/medium/public/800px-2007_07_Belgium_Brussels_06_(cropped)-1.jpg
http://assets.participedia.xyz.s3.amazonaws.com/800px-2007_07_Belgium_Brussels_06_(cropped)-1.jpg
[not working]
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/participedia/frontend/issues/24#issuecomment-256576758,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AADITg5rLFfOAZ_lXjrJK45ReciLSIwEks5q4F1mgaJpZM4KhywX
.

Ran into another case:
http://www.participedia.net/sites/default/files/styles/medium/public/eu_logo.jpg
http://assets.participedia.xyz.s3.amazonaws.com/eu_logo.jpg [not working]

@davidascher Another case
http://participedia.net/sites/default/files/styles/medium/public/e-delib_circles_grc.jpg
http://assets.participedia.xyz.s3.amazonaws.com/e-delib_circles_grc.jpg [not working]


Mongodb source should only send new added data to the sink but not all the documents

using maven://org.springframework.cloud.stream.app:mongodb-source-rabbit:1.2.1.BUILD-SNAPSHOT from repo: http://repo.spring.io/libs-snapshot-local
By using this DSL:
stream create --name mongodb7hdfs7 --definition "mongodb120 --database=sourcedb --host=<IP_ADDRESS> --fixed-delay=5 --cron='*/10 * * * * *' --initial-delay=5 --max-messages=1 --collection=sourceCol | log" –deploy
The mongodb source will send all the documents of the collection to the sink but not only the new added document. So in the monitored log console, every 10 seconds all the documents will be printed but we expect to see only the new added document should be printed.

@sobychacko do you know if it's an issue or just incorrect configuration?

I suggest to read Spring Integration Reference Manual on the matter carefully and pay attention to that TransactionSynchronizationFactory stuff.
The idea is to customize this app starter with the particular custom logic to avoid duplicates.
You may consider to fetch only documents which not older them some date though....
Although I think there should be some level of improvement like updateQuery to be used from the TransactionSynchronizationFactory for the logic you might expect already...

Hi @artembilan , thank you for the suggestion.
But currently the behavior of the mongodb source is that it is continuously polling the entire documents and send to the sink again and again once the stream is deployed. And this will never stop unless it is undployed.
Or is there any way to configure the mongodb source only polling once after it is deployed? At least batch mongodb source ingestion is better than ingest entire documents to sink in endless loop.
Can you provide a batch or streaming ingestion sample based on mongodb source without any code change? Otherwise the mongodb source really cannot be used in any actual case.

No, I agree, there is no such a scenario (at least I don't see it) where the current out-of-the-box  MongoDB Source may work as you expect. You definitely need to change the code of the existing app and provide an appropriate logic.
Here is Doc how to proceed: http://docs.spring.io/spring-cloud-stream-app-starters/docs/Bacon.RELEASE/reference/html/_introduction.html#_creating_custom_artifacts.
I won't mind (and even be glad) if someone else will share his own wisdom or at least experience how to use this MongoDB Source...

Hi @artembilan , thank you! I will try to figure out how to do the code change.
Again, much appreciate your helpful information!

Reopen, since it is really something we have to reconsider for the out-of-the-box app and eliminate its uselessness.

Hi @artembilan , for my case, the use case is expected for the mongodb source could be like:

first time poll all the documents returned by the query
persist the value of the field (ie: updated_timestamp) defined by the user as the 'offset' in H2 or MySQL
when the source mongodb is triggered by the cron, poll all the documents after the offset
loop step #2 and #3 until the stream is undeployed
So the source source app will poll documents increasedly and regularly for example every 2 seconds. This can be used in steaming ingestion or real time processing such as IOT case. As mongodb has good performance to return queried document from massive data, it is always used to store the sensor info of IOT device for the source of the real time ingestion or ETL.

Plus: for the 'offset', user could also provide it by himself for initial running. If it's empty, then the first time polling will return all the documents by the defined mongodb query This 'offset' mechanism might also be the common expected feature for all the steam source apps.
Spring CDF is a very cool thing with cloud native. Definitely it would bring value to big data market and users. Many thanks for your contributions!

OK, @AskaJason ,
What you describe is exactly custom logic. That for you it feels like a good fit to handle some offset and more over via RDBMS. We definitely can't make it as an out-of-the-box feature. It doesn't cover all the possible use-case.
The best choice what I suggest is something like updateQuery. Fully similar what we have in the JDBC Source: https://github.com/spring-cloud-stream-app-starters/jdbc/blob/master/spring-cloud-starter-stream-source-jdbc/src/main/java/org/springframework/cloud/stream/app/jdbc/source/JdbcSourceProperties.java#L38
I won't mind for any other opinion, that is just me not feeling as a good choice to bring RDMBS into the MongoDB microservice...

It's been a few months since the last post on this thread. @AskaJason - I'm wondering if you ever made progress on the code change you mentioned. @artembilan - I just want to make sure I understood your earlier comments. It sounded like you were looking to reconsider this functionality for the out-of-the-box app, but you later commented that it can't be implemented for the out-of-the-box app. Can you please update your current thoughts? I'm also wondering what purpose is served when the same data is repeatedly re-streamed (in my case via rabbitmq). In other words, why would a jdbc source be treated differently than a mongodb source? - The jdbc source I set up seems to work as expected, as does the mongodb sink and jdbc sink, just not the mongodb source.

@artembilan I am also having similar issue with MongoDb source.
I am trying to get the data for last 24hrs form mongodb.
Neither the query nor SPEL expression is working.
PFB my query and SPEL expression I am using.
Would request you share your thoughts on how to get desired data from mongoDB source.I am usong PCF as my env.
query

mongodbv13 --uri=mongodb://user:pass@x.xx.xx.xx:27017/mobileapps_dev13 --fixed-delay=5 --collection=test --query="{date:{$gt: new Date((new Date().getTime() - (24 * 60 * 60 * 1000)))}}" | log
SPEL query I am trying
mongodbv13 --uri=mongodb://user:pass@x.xx.xx.xx:27017/mobileapps_dev13 --fixed-delay=5 --collection=test --query-expression=@Query('date':{'$gte':new Date((new Date().getTime() - (24 * 60 * 60 * 1000)))}}) | log

Error I am getting with SPEL query

Property: mongodb.queryExpression
2018-05-20T11:01:11.99+0530 [APP/PROC/WEB/0] OUT     Value: @Query(value="{'date':{'$gte':new Date((new Date().getTime() - (24 * 60 * 60 * 1000)))}}")
2018-05-20T11:01:11.99+0530 [APP/PROC/WEB/0] OUT     Reason: Failed to convert property value of type 'java.lang.String' to required type 'org.springframework.expression.Expression' for property 'queryExpression'; nested exception is org.springframework.core.convert.ConverterNotFoundException: No converter found capable of converting from type [java.lang.String] to type [org.springframework.expression.Expression]

@artembilan  I was able to resolve the issue . @AskaJason this is what you might have also done .
I created a Stored function in mongo db which returns the iso data for last day.
Mongo Db Stored Function
db.system.js.save({     _id: "getLastDayDocs",     value: function () {         return new Date((new Date().getTime() - (24 * 60 * 60 * 1000)));     } })
I used the below Query in MongoDB source as below
mongodb --uri=mongodb://xxxx:xxxx@xxxxxx:27017/xxxxx --fixed-delay=5 --initial-delay=5 --collection=xxx **--query='{$where: "function() { return (this.date > getLastDayDocs())}"}'** | xxxxx: Processor | xxxxxxxx: mongodb --uri=mongodb://xxxxx:xxx@xxxxxx:27017/xxxxx --collection=xxx
And the problem was solved.
Hope this helps. :)

@gogi2811 ,
I'm glad that you have found a solution, but what I can say about your queries and your solution that it isn't related to what we decided to do in this ticket. I would even say that your problem is more like StackOverflow question.
My point here that we have to add an update option to the MongoDbMessageSource, which we don't have there so far. That is already Spring Integration concern. And one more argument for that approach that we have a similar JdbcPollingChannelAdapter which does have an update option to be performed after selecting.
Everything else you would like to discuss is just an unnecessary noise in the ticket, although I admit that it is useful (at least for me) to how people try to workaround a limitation.
I think your  --query sample is somehow wrong by the MongoDB query syntax, or there is not enough quotes for SCDF to parse the value properly...
The sample with the --query-expression is fully unclear to me. I don't know what is @Query and that is really a surprise that you have a ConverterNotFoundException. You might use some old version of the MongoDB source.
Anyway all of that has to go to StackOverflow and here we have to concentrate on the update property.
Just IMO and I would be glad to hear other opinions: I don't feel the subject properly to be sure what and how should work...

@artembilan artembilan, as per our conversation on SO I will try to make some progress on this.

Thanks, @iceddante .
Although, please, consider to apply an update fix into the Spring Integration project, not here.
Let's start from JIRA though to track all the resources and discussions!
P.S. An SO you have mentioned: https://stackoverflow.com/questions/51676101/implementing-a-mongodb-inbound-flow-with-spring-integration


Add Fiverr Badge

Add badge promoting myself on Fiverr

https://support.fiverr.com/hc/en-us/articles/204514558-Creating-Your-Badge

Tried the badge, but it just doesn't mesh with the rest of the page. Going with another svg icon button instead.


Change the errors raised by authenticators to "unauthenticated" to enhance comprehensibility

As of today the authenticators raise "unauthorized" error if the verification of subject's authentication status fails. The name of the error has been taken from the HTTP Unauthorized used for the same purpose. Nevertheless it is misleading as we're talking about authentication and not authorization. This especially hits in, when configuring error handlers and it becomes unclear, whether the error resulted from an issue in an authenticator or authorizer.

solved by #52


BUG: Profile not showing on website

Description

When visiting the website, its showing error in JS code. I have attach the screenshot for the same below.
I am working on solving this issue, please assign it to me.
Because of this profile aren't loading

Screenshot

Before

After


mget improvement

When I using "mget" command to get some keys in the same slot, the redis monitor shows that keys are using "mget"  command separately rather rather than combining together. It will cause additional network overhead.

it doesn't introduce overhead, since mget commands joined in a batch (single request) to Redis


 This leads to
many gig log files. Turning this off keeps the logs from filling our fs.

Can one of the admins verify this patch?

"ok to test" to accept this pull request for testing
"test this please" for a one time test run
"add to whitelist" to add the author to the whitelist

ok to test

Please rebase on master (don't use the UI button)

Rebased.

retest


Groups of tasks - constraints question

Hello @timnon !
I have a use case where I create iteratively a large set of tasks, some of which can be part of a group, some are not. After that I set constrains (mostly LAX and TIGHT ones).  The main issue is that I have to set LAX constraints for ALL tasks in a group ne by one, due to the fact that I don't use pyschedule.Tasks class. Is there a way to "group" those tasks groups under one "pointer"?
Here is an example code:
       import pyschedule
       s = pyschedule.Scenario(‘test_periods’, horizon=100)
       t1 = s.Task(‘Graphics_1’, length=4, delay_cost=1 , group=‘1’)
       t2 = s.Task(‘Graphics_2’, length=4, delay_cost=1, group=‘1’)
       t3 = s.Task(‘Graphics_3’, length=4, delay_cost=1,group=‘1’)
       t4 = s.Task(‘Graphics_4’, length=4, delay_cost=1,group=‘1’)
       t5 = s.Task(‘Graphics_5’, length=4, delay_cost=1,group=‘1’)
       t6 = s.Task(‘Graphics_6’, length=4, delay_cost=1)
       t7 = s.Task(‘Graphics_7’, length=4, delay_cost=1)

       resource1 = s.Resource(‘R1’)
       resource2 = s.Resource(‘R2’)
       resource3 = s.Resource(‘R3’)
      # Here I have to set constraint for every task in a group...
       s += t6 > t5
       s += t6 > t4
       s += t6 > t3
       s += t6 > t2
       s += t6 > t1
       s += t7 > t6
       t1 += resource1
       t2 += resource1
       t3 += resource1
       t4 += resource1
       t5 += resource1
       t6 += resource2
       t7 += resource3

       pyschedule.solvers.mip.solve(s, kind=‘CBC’, msg=1, ratio_gap=1.2)
       print(s.solution())
       pyschedule.plotters.matplotlib.plot(
           s, resource_height=100.0)

Thanks!

The shortest way to describe your requirements is:
S = Scenario('test',horizon=10)

T = S.Tasks('T_',num=7,delay_cost=1)
R = S.Resources('R_',num=3)

S += T[5] > T[:5]
S += T[6] > T[5]

T[:5] += R[0]
T[5] += R[1]
T[6] += R[2]

solvers.mip.solve(S,msg=1,kind='CBC')
plotters.matplotlib.plot(S)

Since your first 5 tasks are completely interchangeable, you could also define them as a separate group and set is_task=True. This will tell the solver that these tasks can be interchanged on a schedule, which reduces the solving time. However, this is strictly an additional meta-information for tuning and not necessary to define a scenario.

Please update to the newest version

Thank you @timnon for the response, I'm already using version 0.2.34.
The solution proposed by you does not suit well my needs, I have list of Task object which have the same group attribute value, but they can be of a different length (I split one big task manually over a complex working timetable, including possible extra working hours or maintenance periods).
I looked into pyschedule implementation and I noticed that it is inherited from the _List class, so, I made my class, so I can add any number of tasks into the task group.


langchain_ollama: ChatOllama default value of format causes error

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
from langchain_ollama import ChatOllama

llm = ChatOllama(
    model="qwen2.5:72b-instruct",
    base_url="http://<IP_ADDRESS>:11434",
    temperature=0,
    num_ctx=32000,  # increased max characters, otherwise system prompts will be ignored
    num_predict=2048,
)

result = llm.invoke("hello")
print(result.content)

Error Message and Stack Trace (if applicable)
Traceback (most recent call last):
  File "ollama-bug.py", line 11, in <module>
    result = llm.invoke("hello")
             ^^^^^^^^^^^^^^^^^^^
  File "lib/python3.11/site-packages/langchain_core/language_models/chat_models.py", line 286, in invoke
    self.generate_prompt(
  File "lib/python3.11/site-packages/langchain_core/language_models/chat_models.py", line 786, in generate_prompt
    return self.generate(prompt_messages, stop=stop, callbacks=callbacks, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "lib/python3.11/site-packages/langchain_core/language_models/chat_models.py", line 643, in generate
    raise e
  File "lib/python3.11/site-packages/langchain_core/language_models/chat_models.py", line 633, in generate
    self._generate_with_cache(
  File "lib/python3.11/site-packages/langchain_core/language_models/chat_models.py", line 851, in _generate_with_cache
    result = self._generate(
             ^^^^^^^^^^^^^^^
  File "lib/python3.11/site-packages/langchain_ollama/chat_models.py", line 691, in _generate
    final_chunk = self._chat_stream_with_aggregation(
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "lib/python3.11/site-packages/langchain_ollama/chat_models.py", line 592, in _chat_stream_with_aggregation
    for stream_resp in self._create_chat_stream(messages, stop, **kwargs):
  File "lib/python3.11/site-packages/langchain_ollama/chat_models.py", line 579, in _create_chat_stream
    yield from self._client.chat(**chat_params)
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "lib/python3.11/site-packages/ollama/_client.py", line 336, in chat
    json=ChatRequest(
         ^^^^^^^^^^^^
  File "lib/python3.11/site-packages/pydantic/main.py", line 214, in __init__
    validated_self = self.__pydantic_validator__.validate_python(data, self_instance=self)
                     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
pydantic_core._pydantic_core.ValidationError: 2 validation errors for ChatRequest
format.literal['json']
  Input should be 'json' [type=literal_error, input_value='', input_type=str]
    For further information visit https://errors.pydantic.dev/2.10/v/literal_error
format.dict[str,any]
  Input should be a valid dictionary [type=dict_type, input_value='', input_type=str]
    For further information visit https://errors.pydantic.dev/2.10/v/dict_type

Description
I used the default value of format for ChatOllama from the newest langchain_ollama, I found that the default value "" defined below
https://github.com/langchain-ai/langchain/blob/dd0085a9ff3ced8dcf904369ad394eb71d726ac0/libs/partners/ollama/langchain_ollama/chat_models.py#L388
will cause the error above.
If I use the format="json" option, it could work, but it will lead to json result in a high probability which is not what I expected.
I think the correct way to declare this parameter should be
format: Optional[Literal["json"]] = None

which could give me the correct plain text response.
System Info
System Information

OS:  Darwin
OS Version:  Darwin Kernel Version 24.1.0: Thu Oct 10 21:03:15 PDT 2024; root:xnu-11215.41.3~2/RELEASE_ARM64_T6000
Python Version:  3.11.9 (main, Apr 19 2024, 11:43:47) [Clang 14.0.6 ]

Package Information

langchain_core: 0.3.22
langchain: 0.3.10
langchain_community: 0.3.10
langsmith: 0.1.129
langchain_experimental: 0.3.2
langchain_ollama: 0.2.1
langchain_openai: 0.2.11
langchain_text_splitters: 0.3.0
langgraph_api: 0.0.6
langgraph_cli: 0.1.61
langgraph_license: Installed. No version info available.
langgraph_sdk: 0.1.43
langgraph_storage: Installed. No version info available.
langserve: 0.3.0

Other Dependencies

aiohttp: 3.10.5
async-timeout: 4.0.3
click: 8.1.7
cryptography: 43.0.3
dataclasses-json: 0.6.7
fastapi: 0.115.6
httpx: 0.27.2
httpx-sse: 0.4.0
jsonpatch: 1.33
jsonschema-rs: 0.25.1
langgraph: 0.2.56
langgraph-checkpoint: 2.0.8
numpy: 1.26.4
ollama: 0.4.3
openai: 1.52.1
orjson: 3.10.11
packaging: 24.1
pydantic: 2.10.3
pydantic-settings: 2.5.2
pyjwt: 2.10.1
python-dotenv: 1.0.1
PyYAML: 6.0.2
requests: 2.32.3
SQLAlchemy: 2.0.34
sse-starlette: 2.1.3
starlette: 0.41.3
structlog: 24.4.0
tenacity: 8.5.0
tiktoken: 0.7.0
typing-extensions: 4.12.2
uvicorn: 0.32.1
watchfiles: 1.0.0

Omg thanks! I have the same issue. I'm debugging my python environment since hours! Which version is free of this bug?

Omg thanks! I have the same issue. I'm debugging my python environment since hours! Which version is free of this bug?

It seems the code has not been fixed yet👀, the referenced code is the latest.

Yea.. i thought maybe i could use an older version. But i don't know when the bug started.

Yea.. i thought maybe i could use an older version. But i don't know when the bug started.

I changed the package file directly😁.
The ChatOllama from langchain_ollama is new; and the one from langchain_community.chat_models has been marked as deprecated and does not support tool calling.

How does langchain not test for this before shipping a new release?

@samyIO Thank you for oppening this issue!

I have the same problem since yesterday after your latest release.
Any estimation to resolve this bug?

I have not looked at the problem, but pip install ollama==0.4.2 avoids it for now.  This suggests to me that this is an Ollama bug.

https://github.com/ollama/ollama-python/issues/366

OMG, i have absolutely the same error. I'm waiting for this issue to be solved

I have not looked at the problem, but pip install ollama==0.4.2 avoids it for now. This suggests to me that this is an Ollama bug.

Downloading to ollama==0.4.2 helps, thanks! @edmcman

Thanks @LogCreative I've observed the same bug.
Ollama (0.5.1) Llama 3 on Localhost:11434
I am not going to downgrade my local installation.

# Notebook block to setup messages
from pprint import pprint
from langchain_core.messages import AIMessage, HumanMessage

messages = [AIMessage(content=f"So you said you were researching ocean mammals?", name="Model")]
messages.append(HumanMessage(content=f"Yes, that's right.",name="Lance"))
messages.append(AIMessage(content=f"Great, what would you like to learn about.", name="Model"))
messages.append(HumanMessage(content=f"I want to learn about the best place to see Orcas in the US.", name="Lance"))

for m in messages:
    m.pretty_print()

# Notebook block for Ollama invoke. Also tried with plain "string".
from langchain_ollama import ChatOllama

ollm = ChatOllama(model="llama3")
print(ollm)
result = ollm.invoke("Who are you?")
type(result)

ERROR:
ValidationError: 2 validation errors for ChatRequest
format.literal['json']
  Input should be 'json' [type=literal_error, input_value='', input_type=str]
    For further information visit https://errors.pydantic.dev/2.10/v/literal_error
format.dict[str,any]
  Input should be a valid dictionary [type=dict_type, input_value='', input_type=str]
    For further information visit https://errors.pydantic.dev/2.10/v/dict_type

A warning for httpx while installing langchain-ollama:
Installing collected packages: httpx, ollama, langchain-ollama
  Attempting uninstall: httpx
    Found existing installation: httpx 0.28.0
    Uninstalling httpx-0.28.0:
      Successfully uninstalled httpx-0.28.0
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
jupyterlab 4.3.2 requires httpx~=0.28.0, but you have httpx 0.27.2 which is incompatible.
Successfully installed httpx-0.27.2 langchain-ollama-0.2.1 ollama-0.4.3

The issue stems from a recent update in the ollama-python package, where the BaseGenerateRequest class only allows 'json' as a valid value for the format field. Previously, an empty string was also permitted, but this support was removed in the latest update. To resolve this, we can modify the _types.py file in the ollama-python package to allow an empty string alongside 'json'. I've also added a PR to address this issue here.

Hey! We've just cut a release to fix this. I would making updates on the langchain end to defaulting to None instead. There can be unintended consequences to setting as an empty string once the request hits the server so would like to avoid that pattern. Thanks!

To add: sorry this happened. For those who are hitting the error, updating to the newest version of the ollama package should fix it:
pip install -U ollama

Still issue persists

@cogitojayant Sorry about that – do you have a code snippet to reproduce? OP's code now runs with ollama==0.4.4

ollama==0.4.4 did the job in an environment with langchain. thank you!

ollama==0.4.4 still doesn't work

Still not working
from langchain_ollama import ChatOllama
from pydantic import BaseModel, Field

# Define a Pydantic class as the tool schema
class WeatherData(BaseModel):
    city: str = Field(..., description="Name of the city.")
    temperature: str = Field(..., description="The temperature in degrees Celsius.")
    condition: str = Field(..., description="The weather condition.")

# Initialize ChatOllama and bind the schema as a tool
llm = ChatOllama(model="qwen2.5:14b-instruct",
    base_url="http://SERVERIP:11434",)
structured_llm = llm.with_structured_output(WeatherData, method="json_schema")

# Define input
messages = [
    ("system", "You are a weather assistant."),
    ("human", "Provide weather details for Tokyo.")
]

# Invoke the model
response = structured_llm.invoke(messages)

# Print the structured output
print(response)

ValueError                                Traceback (most recent call last)
Cell In[15], line 13
10 # Initialize ChatOllama and bind the schema as a tool
11 llm = ChatOllama(model="qwen2.5:14b-instruct",
12     base_url="http://SERVERIP:11434/",)
---> 13 structured_llm = llm.with_structured_output(WeatherData, method="json_schema")
15 # Define input
16 messages = [
17     ("system", "You are a weather assistant."),
18     ("human", "Provide weather details for Tokyo.")
19 ]
File i:\Coding\.venv\Lib\site-packages\langchain_core\language_models\chat_models.py:1228, in BaseChatModel.with_structured_output(self, schema, include_raw, **kwargs)
ValueError: Received unsupported arguments {'method': 'json_schema'}

Ollama server is 0.51
local:
pip list | findstr -i "langchain ollama"
langchain                 0.3.11
langchain-community       0.3.11
langchain-core            0.3.25
langchain-experimental    0.3.3
langchain-ollama          0.2.1
langchain-text-splitters  0.3.2
ollama                    0.4.4


Fix javadoc typo

The method is checking the io_uring availability, not the epoll availability. This likely happened because the method got copy-pasted from the Epoll class.

Thanks


Windows DNS from cache.conf not making it into /etc/bind/cache/windows/db.windows

Issue Description:
Windows DNS details, defined in cache.conf such as:
Windows
#ENABLE_WINDOWS#zone "download.windowsupdate.com" in { type master; file "/etc/bind/cache/windows/db.windows"; };
not making it into db.windows, instead:
db.windows.txt
Docker Run Command:
steamcache-steamcache-dns.json.txt

I was concerned about dns.steamcache.net entru and not seeing download.windowsupdate.com, but I obviously don't understand how this works.  I tested it and it worked.  I want to add further domains and I will have to add it to cache.conf


Update package.json

Possible fix for:
node:internal/modules/cjs/loader:361
      throw err;
      ^

Error: Cannot find module<EMAIL_ADDRESS>Please verify that the package.json has a valid "main" entry

Thanks for the PR Frank. I'm not seeing this error in my environment, so might be related to the Node or NPM version you're using.
Will you please send me the Node and NPM versions you are using so I can reproduce and test this?

Hi Jason,
Here are my node and npm versions:
node: v16.14.2
npm: 8.5.0

I noticed that the file:
https://github.com/2Toad/diff-match-patch/blob/400fc9962afa78df9d55a12b1ba1e2df31f3cf80/diff-match-patch.js
is named "diff-match-patch.js"  with -'s
and the file:
https://github.com/2Toad/diff-match-patch/blob/400fc9962afa78df9d55a12b1ba1e2df31f3cf80/package.json#L12
mentions that same file, but with _ instead of -.
When I changed the package.json file as in this PR, the error disappeared.
Hope this helps!

Thanks Frank!
Will you pleas merge latest master into your branch? I've replaced the defunct Travis CI build script with new GitHub Actions, which will test your changes against the supported Node versions

Fetched changes from upstream. Master should be merged now ;-) !


[release-v1.15] Use GetServiceHostname when passing URL to JobSink (#8303)

Backport from upstream.
This allows using Knative Service as the sink simply by adding an option to enviroment: eventshub.WithKnativeServiceForwarder

/cherry-pick release-v1.16


GH Issue #411 fix.

This PR is created to fix the GitHub Issue #411
Corrected the scope based on the below in the same article and based on the related Graph article.
"Scope - space-delimited list of permission claim values"

Done the test and it looks good.


Segmentation tasks

Hi Xu, thanks for the great code and really novel paper!  I didn't understand the segmentation implementation too well - hoping you can clarify:

I want to know how to run your code for a segmentation dataset where I have 4 classes. Would I require 4 heads for this task?
Why does SegmentationNet10aTwoHead have two output heads with different sized channels? (Talking about output_k_A and output_k_B).
In your experience, does it take a long time to run the IID loss for say COCO-Stuff 512 settings? It takes me roughly 7 seconds to compute the loss per batch for a 4-class dataset, batch=32 and imgsize= 3x128x128 - I'm not sure if this is normal (My setup is GTX1080 Ti, Cuda 10, pytorch 1.0.1)
EDIT: The time for loss computation was solved for me by removing the float here and by clipping the minimum value to EPS by using the following instead of this:

p_i_j = torch.clamp(p_i_j, min=EPS, max=10000)
p_i_mat = torch.clamp(p_i_mat, min=EPS, max=10000)
p_j_mat = torch.clamp(p_j_mat, min=EPS, max=10000)

The two heads are for main output and auxiliary overclustering output. At test time only the main head is used, the overclustering head is ignored (section 3.2 in the paper, auxiliary overclustering). Each of these heads has sub-heads, which are just multiple instantiations with random initialisations (can be just 1, in the simple case). Each sub-head has c clusters (the same for all-subheads of the head). So you would have a main head with c =4 and the auxiliary head with some c > 4 (even the auxiliary head is optional, but performance improves a lot if it is used.) The former is output_k_B and the latter is output_k_A in the code. These are the number of output channels in the network, just like in supervised classification. They are different because the number of clusters for each head is different - one is ground truth number of clusters, the other is larger for overclustering.
COCO-Stuff 512 took about 2 seconds per batch.

Thank you for the clarification! I re-read version 1 of your paper and concepts became more clear. I just have one last q if you don't mind - I read somewhere in your work that the ground truth has to be one-hot encoded - so at this point in your code, shouldn't you be doing the masking for every single class' ground truth maps?

The mask in that line is used for ignoring predictions for non-Stuff pixels when computing the loss. It simply says which pixels are part of the dataset and which aren't. The ground truth labels are not used, since this is unsupervised learning. Except when evaluating performance.

@nabsabraham @xu-ji  Could you guys give more detail about how to generate my own dataset? What is the format?
Thanks.


Sort files/folders alphabetically

Would be great to have an option to sort files alphabetically instead of by last modified date.

yes maybe I can, but first I must fixed to the bug.
to those of reflection it is still likely to take a few time.


Include parents info in the metadata

Given the following markdown example (which can be replicated in docx and other formats as well):
## My 1s project

### Intro

some text.

### Todo

some other text.

## My 2nd project

### Intro

... etc

It would be great to have some kind of parents field in the metadata to include the ids of all the parents (so there should be one parent id for ### Intro and two parent ids for some text.. This can help a lot with accessing the elements and differentiating between parts of the text, especially when feeding back the data to an LLM.

@saeedesmaili - Appreciate this suggestions, will take a look at this as soon as we can.


Strange things with the ENABLE_PLAYER_LOGGING  function and discord messages after the last update

Hello, i dont know if it's normal but i get a problem with the function "ENABLE_PLAYER_LOGGING"
Before, it's just say the name of the player from the server on discord and on the server broadcast and now, it make the steam player make login and unlog and after it put the ingame name with server user ID and steam ID on discord and server broadcast:
[2024-04-21 15:53:30] [LOG] Kogoro  executed the command. ShowPlayers

Kogoro  has joined

[2024-04-21 15:53:30] [LOG] Kogoro  executed the command. broadcast Kogoro__has_joined

Sending Discord json: {"embeds":[{"title":"Player Joined","description":"Kogoro  à rejoins le serveur!","color":52224}],"flags":0}

[2024-04-21 15:53:31] [LOG] Tanaka Lyanne joined the server. (User id: steam_76561198379551257)

[2024-04-21 15:53:45] [LOG] RCON executed the command. ShowPlayers

Kogoro  has left

[2024-04-21 15:53:45] [LOG] RCON executed the command. broadcast Kogoro__has_left

Tanaka Lyanne,2C17391D000000000000000000000000,76561198379551257 has joined

Sending Discord json: {"embeds":[{"title":"Player Left","description":"Kogoro  à quitté le serveur!","color":14614528}],"flags":0}

[2024-04-21 15:53:45] [LOG] RCON executed the command. broadcast Tanaka_Lyanne,2C17391D000000000000000000000000,76561198379551257_has_joined

Sending Discord json: {"embeds":[{"title":"Player Joined","description":"Tanaka Lyanne,2C17391D000000000000000000000000,76561198379551257 à rejoins le serveur!","color":52224}],"flags":0}

[2024-04-21 15:54:00] [LOG] RCON executed the command. ShowPlayers

I suppose something has changed after the last update , here is 2 picture of before update and after:
BEFORE:

AFTER:

Note that "Kogoro" is my steam name and Tanaka is the name of my character. i dont know why it make like a login/unlog of my Steam name and after resend same for the "server" and with the save ID and the steam ID.
the only way actually to have only one greetings (player name, save ID, steam ID) if i delete the lines "DISCORD_PLAYER_JOIN_MESSAGE" & "DISCORD_PLAYER_LEAVE_MESSAGE". before, all is activated i i didnt remember any problems. Note that as i say, before the update i only get on discord and ingame the Player name in the greetings and not full save ID and steam id with the player name.

+1 I have the same.

Will look into it, thanks for reporting!


support private region for KS3

A private KS3 region may have different rule on endpoints, we can use us-east-1 as the region for compatibility, which can also specified by AWS_REGION.

Codecov Report
Base: 59.43% // Head: 59.43% // Decreases project coverage by -0.00% :warning:

Coverage data is based on head (ad28f39) compared to base (56b50c7).
Patch coverage: 0.00% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2812      +/-   ##
==========================================
- Coverage   59.43%   59.43%   -0.01%
==========================================
  Files         140      140
  Lines       24250    24240      -10
==========================================
- Hits        14413    14407       -6
- Misses       7977     7978       +1
+ Partials     1860     1855       -5

Impacted Files
Coverage Δ

pkg/object/ks3.go
0.65% <0.00%> (-0.02%)
:arrow_down:

pkg/meta/tkv.go
75.02% <0.00%> (-0.46%)
:arrow_down:

pkg/chunk/disk_cache.go
75.24% <0.00%> (-0.40%)
:arrow_down:

pkg/meta/sql.go
64.83% <0.00%> (+0.62%)
:arrow_up:

pkg/meta/tkv_badger.go
73.64% <0.00%> (+0.91%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Crash when backgrounding the app after clearing user defaults.

Hi
We are running version 0.7.7 and found a crash bug. It happens when backgrounding the app after calling
[[NSUserDefaults standardUserDefaults] removePersistentDomainForName:domainName];

Callstack is:
#0	0x00e7dad6 in -[Branch processNextQueueItem] at /Users/gransell/src/iphone-clean/Pods/Branch/Branch-SDK/Branch-SDK/Branch.m:1360
#1	0x00e7cd97 in -[Branch callClose] at /Users/gransell/src/iphone-clean/Pods/Branch/Branch-SDK/Branch-SDK/Branch.m:1253
#2	0x035206d9 in __NSFireTimer ()
#3	0x060ee866 in __CFRUNLOOP_IS_CALLING_OUT_TO_A_TIMER_CALLBACK_FUNCTION__ ()
#4	0x060ee1ed in __CFRunLoopDoTimer ()
#5	0x060ac54a in __CFRunLoopRun ()
#6	0x060aba5b in CFRunLoopRunSpecific ()
#7	0x060ab88b in CFRunLoopRunInMode ()
#8	0x0767c2c9 in GSEventRunModal ()
#9	0x0767c106 in GSEventRun ()
#10	0x0424a106 in UIApplicationMain ()
#11	0x0007943a in main at /Users/gransell/src/iphone-clean/qapital/Supporting Files/main.m:16
#12	0x06a3fac9 in start ()

Let me know if you need any thing else.

Hi @gransell. Thanks for the report, but unfortunately it's not immediately obvious to me what the failure is here. We do store some items in NSUserDefaults, but I'm not really familiar with the domains concept. Which domain is it that you're clearing? I'll keep looking to see if I can reproduce.

Also, what is the actual crash on? The error you've got there is the stack trace, but doesn't mention what the error is. Could you add that?

Never mind, I found this issue, and fixed it in f22d05c1. I will be releasing an update shortly, sorry about that!

No problems. Thanks for the update.


Formatting of "block" macros in let assignments

I call some macros with curly braces and pretend they are blocks. In let assignments, rustfmt turns these macros from
fn main() {
    let x = {
        a();
        b();
        c()
    };
    let y = something!{
        a();
        b();
        c()
    };
}

into
fn main() {
    let x = {
        a();
        b();
        c()
    };
    let y =
        something!{
        a();
        b();
        c()
    };
}

I think it would look better if the macro names were kept on the same line as the let statement, similar to the formatting of real code blocks.
Here's a Playground link of the above example.

Could you tell us which version you are using please? I think this is fixed on the latest rustfmt-nightly.

Oh wow, that's embarrassing. I thought I was running rustfmt from git, but it was just the latest published version on crates.io. Current master branch has this issue fixed. Sorry for wasting your time.


Extract period metadata from dataset file path

Extract time period from dataset path.
Supports standard ISO dates in formats YYYY, YYYY-MM, YYYY-MM-DD, YYYYWWW
Supports SSB specific date formats.

The checks for correct periods in wrong order is missing

@jonolehagemo I think we agredd to take this as part of DPMETA-20


Fix DDP over-subscribes cuda:0 with nproc_per_node processes

Issue #, if available: N/A
Description of changes: There were nproc_per_node processes running on device cuda:0. This PR fixes this issue.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

thanks @verdimrc :)


Discard milliseconds from intendedAt

Later.js can return milliseconds for next(), these are of course not the same on every instance, therefore the unique index on name, intendedAt won't work and jobs will run multiple times.
Check out the following example:
var cron = later.parse.cron('* * * * *');
var nextCron = later.schedule(cron).next(1);
console.log(nextCron.toISOString());

It returns '2015-08-31T15:52:00.869Z'.
This patch removes the milliseconds from intendedAt before it get saved to the database.

Thanks @koszta, merged and released.


Having Address and time issue in Gps Device GT06N

I have a gps device GT06N I set the interval  to 5 min but still getting the record every 10s and also for every record the address is blank can help me to solve this problem

Period issue is definitely a device config/firmware problem.
As for address, you need to enable reverse geocoding in the config. More info here:
https://www.traccar.org/configuration-file/

Thank you so much for reply this information is helpful to me .

Is there any way so that i can get record after 5 mins interval means if i get a location at 5.00 then another location i get 5:05 or more

Or can you please help me regarding this problem that how can i set the time interval in device GT06N i tried the way given in manual but that's not working in my all devices i have around 10 device but time interval not working in any device .If you help me to resolve this problem this can be better to me

So you basically want to ignore some reports on the server side? One option is use filtering:
    <entry key='filter.enable'>true</entry>
    <entry key='filter.limit'>600</entry>
    <entry key='filter.distance'>1000</entry>

i tried with it i set this configuration in my file by this configuration the difference is 6 min but still i get location every 10 second

Speed save in database is in Knot unit or km unit

Can I see the log?
As for speed, it's saved in knots.

Thanks for reply

this is the image file of log file and here below is the google drive link
https://drive.google.com/file/d/0B0knqXidjEzPakc2bzExVUZMQW8/view?usp=sharing
so please tell me a solution to my problem

Also help me with course check in log i think i got wrong course attribute and also plz can you tell me what the othe field in other column means eg : mnc etc

i check many time its seems filtration is not working please help me to resolve this problem

The config I provided above filters messages if time difference is less than 5 minutes and distance is less than 1 km. It works correctly as far as I can see. You can increase distance part if you want only time filtering.
Also I noticed that you are using old version of Traccar. I recommend to upgrade to the latest one.
Why do you think the course is wrong? Provide example.
MNC is a Mobile Network Code.

true
300
true
true
true
100000
Above i send you an image and my config setting of filtration you can see in image the time i getting the record according to config its 300 second but still i get many records per minute

Have you restarted the service after changing the config? Note that filtering would apply only for newly added records. If the problem persists, I need the latest log file to investigate the problem.

Thanks for reply,
yes i restarted the service after change in config .and here is the google drive link of my log file
https://drive.google.com/file/d/0B0knqXidjEzPSXp0akZ4RFdobFk/view?usp=sharing
Please Check and tell me the what i need to do to short out this problem quickly
Thanks in advance

Forgot that here is my config file link so you look at both and tell me whats the problem so i can resolve this issue
https://drive.google.com/file/d/0B0knqXidjEzPUWZvVkVKRlZldE0/view

Please upgrade to the latest version of Traccar. There might have been some bugs in filtering in the old version.


Change the name of the language file portuguese brazil

Was having trouble to set the language of origin.
The name of the 'pt-br' language file is wrong.
The correct is 'pt-BR', according to ISO 639-1:2002 standard.
Until browsers identifies language as 'pt-BR'.

There are more languages in this repository with incorrect language codes, like be-nl, which should be nl-BE.
So +1, but not just for the language you specified.

Hi @adamwdraper, are you planning to update the codes or is there a reason for having them this way? The issue hasn't been resolved yet so I'm just curious why the ticket is being closed.


README: add License shield

add License shield:

Codecov Report

:exclamation: No coverage uploaded for pull request base (master@46f0695). Click here to learn what that means.
The diff coverage is n/a.

@@           Coverage Diff            @@
##             master   #8235   +/-   ##
========================================
  Coverage          ?   41.5%
========================================
  Files             ?     486
  Lines             ?   64913
  Branches          ?       0
========================================
  Hits              ?   26944
  Misses            ?   34518
  Partials          ?    3451

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 46f0695...04dd92f. Read the comment docs.


Feature flag work item creation

Summary of the Pull Request
What is this about?
PR Checklist

[ ] Applies to work item: #xxx
[ ] CLA signed. If not, go over here and sign the CLI.
[ ] Tests added/passed
[ ] Requires documentation to be updated
[ ] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

Info on Pull Request
What does this include?
Validation Steps Performed
How does someone test & validate?

Codecov Report

Merging #3353 (94181dc) into main (f144544) will decrease coverage by 1.14%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main    #3353      +/-   ##
==========================================
- Coverage   31.69%   30.55%   -1.14%
==========================================
  Files         308      133     -175
  Lines       37615    14317   -23298
==========================================
- Hits        11921     4375    -7546
+ Misses      25694     9942   -15752

Files Changed
Coverage Δ

...ce/ApiService/onefuzzlib/NotificationOperations.cs
24.79% <0.00%> (ø)

... and 175 files with indirect coverage changes


Fixing the hashivault link to ensure nightly build success

the 308 isn't the cause of the broken link build failing


[Feature Request]: Single Tenent Microsoft Entra ID Authentication for Python

Scenario
Once the bot is being deploying to the Azure App Service / Azure Bot Framework, there is only possibility to configure authentication using the Azure Active Directory service provider when the related App Registration instance is supporting Multitenant authentication. Once the Single Tenant authentication is configured in registered application the Python bot is not able to obtain an Access Token properly and throw an KeyError: 'access_token' exception. I found out that according to the documentation  the newest botframework library for Python already supports the Single Tenant authentication, however, it seems that there is no possibility to provide the required for that authentication method Tenant ID in the TeamsAdapter class.
Solution
Leverage the newest version of the botframework library to allow the Single Tenant authentication - add a possibility to provide the additional Tenant ID variable in the configuration file.
Additional Context
The Single Tenant authentication is mandatory from the security perspective for al of the production grade solutions, so lack of the mentioned option makes it impossible to use the teams-ai library in most of the use cases.

Hi @arkadiusz-lubina-hitchienergy, we are currently working on this for JS. We will be working as promptly as we can to complete this for Python as well.

Closing as this is a duplicate with #1615 - please refer to this ticket for updates


Excessive locking in Target.PrecalculateVolatileLayoutsWithLock

Hi, we are on NLog 4.7.2 on .net core 3.1. We were profiling our asp.net app for some other issues and noticed that NLog's Target creates a lot of thread contention at PrecalculateVolatileLayoutsWithLock method when our apps runs under high load.
When we log we do our own formatting, so we never pass params to NLog, but we do populate the event context properties with quite a few items. We log to the async wrapper on top of the file target. Our layouts are pretty basic.
Can you give us some directions on where we should start looking in order to diagnose this. Why is PrecalculateVolatileLayoutsWithLock called a lot, to begin with. Why not its concurrent sibling? What co we do to optimize this?
Thanks a lot!

@zvolkov PrecalculateVolatileLayoutsWithLock is activated when using LayoutRenders not marked with [ThreadSafe]-attribute.
Maybe you can show your NLog-config ?

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
      autoReload="true" throwExceptions="false">
    <targets>
        <target xsi:type="AsyncWrapper" name="logfile"
                batchSize="2000" timeToSleepBetweenBatches="100" queueLimit="20000" overflowAction="grow">
            <target name="applogjson" xsi:type="File"
                    fileName="${environment:variable=XYZ_APPLOGS}/${shortdate}.applogjson">
                <layout xsi:type="JsonLayout">
                    <attribute name="timestamp" layout="${date:universalTime=false:format=yyyy-MM-ddTHH\:mm\:ss.FFFFFFFK}" />
                    <attribute name="sequenceNumber" layout="${event-context:item=SequenceNumber}" />
                    <attribute name="level" layout="${level:upperCase=true}" />
                    <attribute name="saneId" layout="${event-context:item=SaneId}" />
                    <attribute name="traceId" layout="${event-context:item=TraceId}" />
                    <attribute name="requestId" layout="${event-context:item=RequestId}" />
                    <attribute name="logger" layout="${logger}" />
                    <attribute name="logId" layout="${event-context:item=LogId}" />
                    <attribute name="message" layout="${message}" />

                    <!-- stateful application -->
                    <attribute name="sessionId" layout="${event-context:item=SessionId}" />
                    <attribute name="rootContext" layout="${event-context:item=RootContextId}" />
                </layout>
            </target>
        </target>
    </targets>

    <include file="${environment:variable=XYZ_APPROOT}/Config/nlog-override-local.config" ignoreErrors="true" />

    <rules>
        <!-- microsoft -->
        <logger name="Microsoft.*"
            minlevel="Error" writeTo="logfile" final="true" />

        <!-- default logging level for everything. overriden by specific rules above. -->
        <logger name="*"
            minlevel="Info" writeTo="logfile" final="true" />
    </rules>
</nlog>

<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <targets>
		<target xsi:type="AsyncWrapper" name="file" batchSize="2000" timeToSleepBetweenBatches="100" queueLimit="20000" overflowAction="grow">
			<target name="flatText" xsi:type="File"
	            layout="${time} [${pad:padding=-5:inner=${level:uppercase=true}}] [R:${pad:padding=36:inner=${event-context:item=RequestId}}] ${logger}: ${message} ${exception:format=toString:maxInnerExceptionLevel=100}"
	            fileName="${environment:variable=XYZ_APPLOGS}/${environment:variable=XYZ_DEPLOYMENT}-${shortdate}.log" />
		</target>
    </targets>
    <rules>
        <logger name="*" minlevel="Info" writeTo="file" final="true" />
    </rules>
</nlog>

The problem is the use of the obsolete ${event-context}. Make a search of ${event-context and replace with ${event-properties (Remember to also fix nlog-override-local.config)
Other recommendations:

Remove timeToSleepBetweenBatches="100". The default value of 1 is faster.

Remove batchSize="2000". The default value of 200 is faster.

Update all use of ${environment:variable with the option cached=true". Ex: ${environment:variable=XYZ_APPLOGS:cached=true}

If it is important to react to changes of environment-variables. The use the option cachedSeconds=30. Ex: ${environment:variable=XYZ_APPLOGS:cachedSeconds=30}

Perfect, thanks a ton! We will apply these and come back only if we still have issues at that point. This was super helpful.

Another thing to consider is configure the file-target to use keepFileOpen="true" and concurrentWrites="false":
<target name="applogjson" xsi:type="File" keepFileOpen="true" concurrentWrites="false"
                    fileName="${environment:variable=XYZ_APPLOGS}/${shortdate}.applogjson">

Same can be considered for <target name="flatText" xsi:type="File". But it will not work if multiple applications are writing to the same files, or the files are placed on a network-drive.

Thanks a lot, will do.

@snakefoot looks like that caching option is not ThreadSafe and so it reintroduces the calls to PrecalculateVolatileLayoutsWithLock. Other than that the rest of your suggestions worked great.

@zvolkov Thank you for the feedback. Guess some effort should be investigated in making cached-attribute work with full concurrency.

Created PR #4132 to add [ThreadSafe]-attribute to CachedLayoutRendererWrapper.

NLog 4.7.6 has beeen released, where cached=true does not hurt thread-concurrency:
https://www.nuget.org/packages/NLog/4.7.6/


⚠ IMS has degraded performance

In 5f22767, IMS (https://ims.vflits.com) experienced degraded performance:

HTTP code: 200
Response time: 3822 ms

Resolved: IMS performance has improved in d59f9bb after 18 minutes.


[Extensibility Enhancement] Extension Codeunit 9561: Document Report Mgt.

We need a way to create individual documents before or after the merge process. The document created by default is still needed.
What do we need:
The Function TryXmlMergeWordDocument in the codeunit 9561 is accessible from the outside (i.e. no local modifier). This allows us to create individual documents with the InStrXmlData InStream and the ReportId or Wordemlage template.
important:
The TryXmlMergeWordDocument function calls the DotNetcomponent NAVWordXMLMerger.MergeWordDocument . Can we rely on the order of pages in the document to match the order of DataItems in the XML Datasource?

@StanPesotskiy
Hello,
could you please consider this event request too? Thank you. I added a prefix to the titel as you mentioned.

We are still waiting for more detailed information about this ask. Do you plan to provide it?

Hi,
Sry for the late response, here some information to clear things up. In codeunit 9651 (Document Report Mgt.), the procedure TryXmlMergeWordDocument (line 85) is used to create a Word document by merging the Word template and the XML datasource.
What do we need?
The current implemention:
LOCAL [TryFunction] TryXmlMergeWordDocument(VAR InStrWordDoc : InStream;VAR InStrXmlData : InStream;VAR OutStrWordDoc : OutStream) OutStrWordDoc := NAVWordXMLMerger.MergeWordDocument(InStrWordDoc,InStrXmlData,OutStrWordDoc) ;
We need the local modifier removed:
[TryFunction] TryXmlMergeWordDocument(VAR InStrWordDoc : InStream;VAR InStrXmlData : InStream;VAR OutStrWordDoc : OutStream) OutStrWordDoc := NAVWordXMLMerger.MergeWordDocument(InStrWordDoc,InStrXmlData,OutStrWordDoc) ;
This change would enable us to create seperate documents for each dataitem in the datasource.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for submitting this issue. We will publish a fix for it in the next minor update for release 15.

Thanks for submitting this issue. We will publish a fix for it in the next minor update for release 15.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Update direct-routing-plan-media-bypass.md

Line 45 Typo fixes https://github.com/MicrosoftDocs/OfficeDocs-SkypeForBusiness/issues/1971

@CarolynRowe Hi Carolyn, changes look correct. Could you please check and merge? Thanks!


feat: Add TLS annotation for intra-pod encryption

Adding a feature into clowder that allows a service to specify that it wants TLS encryption. This will add an annotation to the service that will create a secret containing a certificate that can be used to encrypt the traffic. Documented Here
The secret will need to be accessed by the pod and then used by the app, but this will make it available.
Example:
webServices:
  tls: True
  public:
    enabled: True
  private:
    enabled: True

/retest

@kylape that's a good point. Thanks for the feedback

@kylape @psav First time messing with clowdenv updates so let me know if I missed anything. The tests pass locally which seems like a good start.

After thinking about this some more, we should probably add in some automation to make the certificate files available in the container for apps.  I think the best way would be to mount the certificate secret into the container and add a pointer to the cert dir in cdappconfig.json. wdyt?

FYI Deployment template not updated. Please run make build-template and recommit
Also, with TLS being required will this break anyone?

will this break anyone?

afaict there is no enforcement here, just making the certs available.  hmm but now that I'm thinking about it, should we also add a TLS port to the service?  and if we do that, should we remove the non-TLS port? :thinking:

Removing the non-TLS port is where we'd run into enforcement issues, so perhaps we don't do that yet?

All this is going to do is setup an annotation that tells openshift to make a secret available for tls, but it doesn't enable anything. That requires changes within the app itself.
It probably would be a good idea to get it into cdappconfig.json so apps could use it like they do with rdsCA certs whenever they are ready to enable it.
Do we want to consider throwing a new tls port into this PR while we're at it? We won't remove the standard port, but at least we'll have a new one.

  These various initiatives have different timelines, so different environments will need to be in different states of TLS-only modes
While it is true that there is no enforcement by clowder when providing TLS certs to services, the enforcement implicitly comes from clients that need to connect to these services.  How do they know when to use TLS?
This seems obvious, but: services will have to configure TLS before any clients can connect to them using TLS.

Given these factors, here is a sketch of a larger proposal:

Just add the new annotation to every service resource; there is no need for a flag to "enable" TLS
Either include the TLS certs directly in cdappconfig.json or mount them separately and add a pointer
Add another port to every container for TLS (again no need for a flag)
Add a flag to ClowdEnv to disable the plain-text port in the service.  This is just to make it clear during an audit when TLS is exclusively used.
Clients will then need to connect with some extra logic during the transition: Try HTTPS; if it fails, then try HTTP.
Communicate the change out to teams asap so they can start making required changes to both services and clients.

Perhaps this should be an ADR?  Sorry that this small change has ballooned into a Whole Thing!

Should we close this off in favour of the new ADR?

We implemented this using a different method


Rename Blazor Templates(#10348)

Summary of the changes (Less than 80 chars)

Rename RazorComponents project to blazorserver
Rename Standalone Blazor project to blazorwasm with option --host that will add ASP.NET Core hosted backend

Addresses #10348, #11700

@danroth27 here is the ServerSide rename work, blocked on wasm template

@aspnet-hello triage https://dev.azure.com/dnceng/public/_build/results?buildId=238021

This comment was made automatically. If there is a problem contact<EMAIL_ADDRESS>I've triaged the above build. I've created/commented on the following issue(s)
https://github.com/aspnet/AspNetCore-Internal/issues/2718

@danroth27 	here are the client-side updates. Will need a review on my approach with templates, but they build and work.

@phenning one thing that I may need some help with is moving the contents of a folder up one level using the template engine

@isaac2004 looks like this will be good to go once we get a review from @danroth27 and a rebase to solve these conflicts.

fixed some js reference issues per #11700

@ryanbrandenburg @danroth27 worked with @phenning to complete the authoring work. Templates are working through CLI and VS (including 16.3.1 option work). Can you and possibly @SteveSandersonMS review the template themselves?
@ryanbrandenburg also let me know if there are merge conflicts I need to do on my side, I moved the above files so there are conflicts that I manually added

I can't resolve these merge conflicts from the UI. When possible please resolve any merge conflicts you're aware of as it seems that the UI is pretty picky about what it will allow and not having push access to your fork makes it impossible to for me to resolve them on this PR.

@ryanbrandenburg resolved the merge on my side. Should be good if it passes tests and  review

@danroth27 changes complete

On a side note, the following docs will need to be updated after merging
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/blazor/client-side?view=aspnetcore-3.0
https://docs.microsoft.com/en-us/aspnet/core/blazor/hosting-models?view=aspnetcore-3.0
https://docs.microsoft.com/en-us/aspnet/core/blazor/get-started?view=aspnetcore-3.0&tabs=visual-studio
https://docs.microsoft.com/en-us/aspnet/core/security/blazor/?view=aspnetcore-3.0&tabs=visual-studio

@phenning can you confirm the vs template shows the Hosted option after Dan's requested changes?

@danroth27 can you confirm the VS dialog is what you want

@isaac2004 If you're willing, I'd like to make two more tweaks:

Update the Blazor WebAssembly App description to say: A project template for creating a Blazor app that runs on WebAssembly and is optionally hosted by an ASP.NET Core app. This template can be used for web apps with rich dynamic user interfaces (UIs).

Update the text for the "Hosted" checkbox to say "ASP.NET Core hosted".

@danroth27 both requests are complete

:shipit:

The failures here seem to be substantive.

_Host.cshtml file needs to contain a "BOM" character.
Startup.cs(15,48): error CS0234: The type or namespace name 'Areas' does not exist in the namespace 'AspNet.blazorserverindividualuld._7cbeb0' (are you missing an assembly reference?)

@ryanbrandenburg what is going on with this startup file
src/ProjectTemplates/Web.ProjectTemplates/content/BlazorServerWeb-CSharp/Startup.cs
It seems like it doesn't like the condition at the bottom. No matter what I do, it does not seem to build the template right. I think that is the issue that is happening

@ryanbrandenburg failed flaky tests but CI passed

The build is technically green, but you still have this failure that I mentioned above. It didn't fail the build because it's marked flaky, but in this case it's an actual break and it needs to be fixed. The problem seems to be that the "Areas/**" path is not being created, so it fails when they're referenced in Startup.cs.

@danroth27 party time!


Permissions in docker-entrypoint.sh

I'm trying to execute a simple script, but it seems I don't have enough permissions with postgres user, specially to create folders. Shouldn't the entrypoint script be executed as root? So it can be possible to do anything with my scripts?
The idea around this is to automatically add .sql files to the init folder, but I don't want to edit the Dockerfile and place a COPY each time I have a new sql file to execute.
This is a simple example to illustrate the problem, the real init.sh is supposed to copy files from a Volume to the right folder, but the copy doesn't have enough permissions, just like the mkdir in the example bellow:
Dockerfile
FROM postgres:9.5
....

COPY ./init.sh /docker-entrypoint-initdb.d/
RUN chmod +x /docker-entrypoint-initdb.d/init.sh

init.sh
#!/bin/bash
whoami
mkdir /somefolder

Result
/usr/local/bin/docker-entrypoint.sh: running /docker-entrypoint-initdb.d/init.sh
postgres
mkdir: cannot create directory ‘/somefolder’: Permission denied

We did discuss this when we moved to allow the container to run as (semi) arbitrary users: https://github.com/docker-library/postgres/pull/253#issuecomment-273927792 and have a note in the docs:

Additionally, as of docker-library/postgres#253, these initialization scripts are run as the postgres user (or as the "semi-arbitrary user" specified with the --user flag to docker run; see the section titled "Arbitrary --user Notes" for more details).
- Docker Hub (and source)

Is there a reason you don't just COPY *.sql /docker-entrypoint-initdb.d/ or docker run -v /sql/scripts/:/docker-entrypoint-initdb.d/ ...?  In either case you'll need to ensure that whatever user the postgres container runs as has permissions to access the files.
Just a reminder that any scripts or sql files in /docker-entrypoint-initdb.d/ will only be run if there is no database (usually the first start of the container). Also, if you modify the contents of /docker-entrypoint-initdb.d/ while the entrypoint is looping over the files in there, it will not pick up any new files.
As long as it doesn't need postgres running, perhaps your script just needs to run before the entrypoint? Just end your script with exec "$@".
FROM postgres:9.5
....
COPY ./init.sh /usr/local/bin/
# some docker storage backends fail on this kind of layer, so should probably chmod it in git instead
RUN chmod +x /usr/local/bin/init.sh

ENTRYPOINT ["init.sh"]
CMD ["docker-entrypoint.sh", "postgres"]

Hello @yosifkit,
first of all thank you for your support!
The COPY *.sql /docker-entrypoint-initdb.d/ isn't a solution since I want to build a global image and use it in different compose files, and for each specific implementation, it is required to import different SQL files that should be passed on runtime and not on image build. I have some mechanisms for copy_in files.
Thank you for this

Just a reminder that any scripts or sql files in /docker-entrypoint-initdb.d/ will only be run if there is no database

The whole idea was to move/delete files after being used, so a restart wouldn't trigger the same behavior. Since this only happens once, I can import them directly from the volume, so I ended up doing this in the init.sh:
for file in /tmp/sql/*; do
   psql db_name -f "/tmp/sql/${file##*}"
done

I think you can close this issue. But, in my humble opinion, I don't think the entrypoint scripts and SQL files should run within a user with so few permissions. Maybe right before starting the postgres, u could log as postgres user. I understand the security constraints, but, at the end of the day I can do a docker exec -it container_id /bin/bash with a root user.

Anybody interested in solving this thing by mounting a directory and not relying onto COPY or ADD, this might be useful. Also as documentation for my future self.
Given we have a init.d directory, with one or more init scripts, we can do following dance:
# get the user ID of the user running the process
docker top eremite-postgresql-16
# was 999 for the process postgres

# get the group id
docker exec -it eremite-postgresql-16 /bin/bash
cat /etc/passwd | grep 999

# got the line for the user postgres
cat /etc/group | grep postgres

# hence, this is what we want: 999:999

exit

sudo chown 999:999 initdb.d/*
chmod u+x initdb.d/*

Enjoy :)


Interface for injecting custom authorization

I added an interface so that you can inject your own authorization implementation.
We needed this in our project since we were using custom authorization code.
How to use it:

Create class implementing the IAuthorizerForElmah interface, which is just the single method IsAuthorizedForElmah(username). In this method you can write your own code for determining whether this user is authorized to use elmah.
Inject the class using the Dependency Injection framework you are using in your project. (Elmah.mvc will find the class using the DependencyResolver)

Is there a working example of "filter" approach or the "DI" approach?

I'm closing this as too old


Fix Regression When Adding Torrent Files

At some point, the parse-torrent dependency was upgraded; the new version of this dependency relies on another dependency named uint8-util which relies on the WebCrypto API for message digest functions.
Unfortunately, the WebCrypto API is only available in secure contexts (HTTPS or localhost). This is likely why the regression was not caught sooner, because a developer would have to go out of their way to load the web app in an insecure context in order to experience the bug.
This PR reverts to the previous version of the offending dependency, which appears to solve the problems users are experiencing with adding torrent files from local filesystem or by URL.
Resolves https://github.com/6c65726f79/Transmissionic/issues/1309, resolves https://github.com/6c65726f79/Transmissionic/issues/1340.

forgive the ignorance about how github works, but…  has this been fixed? how do you tell what version fixes it, and how to get that version?

forgive the ignorance about how github works, but… has this been fixed? how do you tell what version fixes it, and how to get that version?

@gajahduduk
As I far as I know, this issue has not been fixed. This repository hasn't received any commits in more than a year, so the author is likely too busy or otherwise unable to merge this PR. Are you referring to a version of Transmissionic, or to a version of the offending dependency? If it's the former, you could try installing older versions of Transmissionic until you find one that works in an insecure context. For the latter, the problematic dependency is called parse-torrent, and I found that version 9.1.5 doesn't have this problem.


feat: add is_parameter_timeseries trait, improve parameter timeseries indexing

Checklist

[ ] Appropriate tests were added
[ ] Any code changes were done in a way that does not break public API
[ ] All documentation related to code changes were updated
[ ] The new code follows the
contributor guidelines, in particular the SciML Style Guide and
COLPRAC.
[ ] Any new documentation only uses public API

Additional context
Add any other context about the problem here.

I'll reopen to run CI once MTK is tagged

RAT downstream failure is an adjoint bug in SciMLBase

``

SciMLBase downstream failure is an MTK bug


Add SpimDataOpener

@KateMoreva @constantinpape

[x] Copy SpimDataOpener here
[x] Copy ImageDataFormats here
[x] Copy what we need from imagej-utils here
[x] Add documentation (javaDoc) to the ImageDataFormat enum to make clear what each of the file formats is
[ ] Test using those classes from mobie-viewer-fiji
[ ] Delete those classes from mobie-viewer-fiji and depend on mobie-io instead
[ ] Ping Tobias Pietzsch about SpimDataOpener as he was interested in either using our code or re-implementing something similar.

I think most of this is done already, @tischi could you check if any of the points here still need to be done and if yes say so /  otherwise close the issue.


[docs] add badges

added github release badge and npm badge. feel free to add more if you think of any.

I see one badge correct? Npm would be downloads I suppose? On the other repos we have github stars as well. Don't think codesandbox of the visual studio browser are needed here.

I think the stars are unnecessary since you can already see them on top @mitchelvanbever. Codecov would be a nice addition imo, but can’t get it to load the storyofams repos after authorizing the organization for some reason (infinite spinner)..

Codecov would be a nice addition imo, but can’t get it to load the storyofams repos after authorizing the organization for some reason (infinite spinner)..

That's because we don't use codecov ? 😅 you can probably achieve the same without codecov by uploading coverage in the github action to run tests.
In regards to the stars; I just want uniformity. Maybe we can come up with 2-3 badges we're using apart from the codesandbox one if that makes sense. Which would mean we'd drop the stars on all repo's


How to use express middleware with typescript-rest

I'd like to have a middleware, like authorization middleware for example.
How can I use middleware with typescript-rest.
Suppose I have something like this:
app = express();
const myMiddleware = (req, res, next) => {
  console.log("I'm in the middle");
  next();
}

@Path("/get")
class MyGetController {
  @GET
  getSomething() {
    return "Some response";
  }
}

app.use('/api', myMiddleware, MyGetController);

How can I do it? How can I augment a class with some middleware in front of it?
How can I use typescript-rest to write middleware, and to compose middleware with controllers?

Typescript-rest receives an express router as parameter to build the routes for all controllers. You can add any middleware to this router as you do using pure express:
app = express();
const myMiddleware = (req, res, next) => {
  console.log("I'm in the middle");
  next();
}

@Path("/get")
class MyGetController {
  @GET
  getSomething() {
    return "Some response";
  }
}
app.use(myMiddleware);
Server.buildServices(app);

Or using a router:
const app = express();
const myMiddleware = (req, res, next) => {
  console.log("I'm in the middle");
  next();
}

@Path("/get")
class MyGetController {
  @GET
  getSomething() {
    return "Some response";
  }
}
const apis = express.Router();
apis.use(myMiddleware);
Server.buildServices(apis);

app.use('/apis', apis);

Remember that, as any other middleware for express, the order where you add your middlewares matters.
For authentication example, check this issue