Support for KEYS* command with redis clustering

It would be possible to run a KEYS command on all nodes of a cluster, then combine the results.  This makes it possible to search for a pattern of keys.
In my app, I want to be able to delete everything for a specific user.  My key path is always username:stuff.
It is nearly a deal breaker to not be able to run KEYS username:* and then delete everything for a specific user found in the reply.  I would really appreciate this feature!

Any updates on this? How do I iterate on all active cluster nodes if the connections are lazily initialized?

bump for the Keys feature...

another bump for this feature

I have a very similar requirement, need to search for pattern with keys in cluster,  how can i do this in java ?  @nrk or anyone..

+1

have you guys tried using hgetall?
On Wed, Jul 15, 2015 at 2:05 AM, Dmitri Perunov<EMAIL_ADDRESS>wrote:

+1
—
Reply to this email directly or view it on GitHub
https://github.com/nrk/predis/issues/172#issuecomment-121523265.

@JasonLantz how does it suppose to help to get list of keys?
Anyway, @nrk solution in second comment worked for me.
It connected to 3 out 3 nodes, not like it was stated to connect to only first one.
Maybe it was fixed, maybe I've misunderstood and this is a correct behaviour.
I'm calling predis from SncRedis bundle's service.

+1

:+1:

See my comments on #338 for a better and updated solution on how to iterate over the master nodes of redis-cluster to perform some commands on each node or iterate the keyspace as a whole in a decently efficient way.

+1


Can not input line break between " and other command.

Between the " and 'x' in the following code, hitting Return key doesn't insert line break between them and insert line break next line.
test <- function() {
	for (i in 1:10) {
		"
		Test string.
		"x <- 1
	}
}

So the caret does not move

https://github.com/Microsoft/RTVS/commit/c0da9ce1d309332d3a115d8d5a74b0ee3e0cdf75

Thanks!


Text Selection on web throws RuntimeError: unreachable

Steps to reproduce

Run the sample code by flutter run -d chrome, or run it on https://dartpad.dev/
Try to select "ANOTHER TEXT"
Observe the console output

The conditions to reproduce this issue is very specific, you need to have a Column widget with two or more Text children,
one of the Text child has to be long enough to just overflow by 1 character, then select the other Text child would cause the exception.
So that in the code sample, if we modify the first Text widget to make it shorter or longer, or modify the Container width, the issue won't happen.
Expected results
No exceptions should be thrown.
Actual results
The following exception is thrown:
══╡ EXCEPTION CAUGHT BY GESTURE
╞═════════════════════════════════════════════════════════
══════════
The following NativeError object was thrown while handling
a gesture:
  RuntimeError: unreachable

When the exception was thrown, this was the stack:
canvaskit/chromium/canvaskit.js 115:52
getGlyphPositionAtCoordinate
lib/_engine/engine/canvaskit/canvaskit_api.dart 3263:8
SkParagraphExtension.getGlyphPositionAtCoordinate
lib/_engine/engine/canvaskit/text.dart 651:60
getPositionForOffset
packages/flutter/src/painting/text_painter.dart 1489:24
getPositionForOffset
packages/flutter/src/rendering/paragraph.dart 976:25
getPositionForOffset
packages/flutter/src/rendering/paragraph.dart 1477:64
[_updateSelectionEdge]
packages/flutter/src/rendering/paragraph.dart 1409:22
dispatchSelectionEvent
packages/flutter/src/widgets/selectable_region.dart
2346:22
dispatchSelectionEventToChild
packages/flutter/src/widgets/selectable_region.dart
1576:18
dispatchSelectionEventToChild
packages/flutter/src/widgets/selectable_region.dart
2461:33                       [_adjustSelection]
packages/flutter/src/widgets/selectable_region.dart
2281:85                       handleSelectionEdgeUpdate
packages/flutter/src/widgets/selectable_region.dart
1545:18                       handleSelectionEdgeUpdate
packages/flutter/src/widgets/selectable_region.dart
2298:18                       dispatchSelectionEvent
packages/flutter/src/widgets/selection_container.dart
183:19                      dispatchSelectionEvent
packages/flutter/src/widgets/selectable_region.dart
1002:20                       [_selectStartTo]
packages/flutter/src/widgets/selectable_region.dart 1021:5
[_collapseSelectionAt]
packages/flutter/src/widgets/selectable_region.dart 512:13
[_startNewMouseSelectionGesture]
packages/flutter/src/gestures/tap_and_drag.dart 1179:41
<fn>
packages/flutter/src/gestures/recognizer.dart 275:24
invokeCallback
packages/flutter/src/gestures/tap_and_drag.dart 1179:7
[_checkTapDown]
packages/flutter/src/gestures/tap_and_drag.dart 982:7
acceptGesture
packages/flutter/src/gestures/arena.dart 167:12
sweep
packages/flutter/src/gestures/binding.dart 492:7
handleEvent
packages/flutter/src/gestures/binding.dart 468:14
dispatchEvent
packages/flutter/src/rendering/binding.dart 439:11
dispatchEvent
packages/flutter/src/gestures/binding.dart 413:7
[_handlePointerEventImmediately]
packages/flutter/src/gestures/binding.dart 376:5
handlePointerEvent
packages/flutter/src/gestures/binding.dart 323:7
[_flushPointerEventQueue]
packages/flutter/src/gestures/binding.dart 292:9
[_handlePointerDataPacket]
lib/_engine/engine/platform_dispatcher.dart 1289:5
invoke1
lib/_engine/engine/platform_dispatcher.dart 273:5
invokeOnPointerDataPacket
lib/_engine/engine/pointer_binding.dart 168:30
[_onPointerData]
lib/_engine/engine/pointer_binding.dart 791:20
<fn>
lib/_engine/engine/pointer_binding.dart 720:7
<fn>
lib/_engine/engine/pointer_binding.dart 317:9
loggedHandler
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/
operations.dart 574:37  _checkAndCall
dart-sdk/lib/_internal/js_dev_runtime/private/ddc_runtime/
operations.dart 579:39  dcall

Handler: "onTapDown"
Recognizer:
  TapAndPanGestureRecognizer#5f8b7
══════════════════════════════════════════════════════════
══════════════════════════════════════════
Another exception was thrown: RuntimeError: unreachable

Code sample
Code sample
import 'package:flutter/material.dart';

void main() {
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        colorScheme: ColorScheme.fromSeed(seedColor: Colors.deepPurple),
        useMaterial3: true,
      ),
      home: const MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  const MyHomePage({super.key});

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: Container(
        width: 100.0,
        alignment: Alignment.center,
        child: const SelectionArea(
          child: Column(
            crossAxisAlignment: CrossAxisAlignment.stretch,
            children: [
              Text(
                'ABCDEFGHIJKL',
                maxLines: 1,
                overflow: TextOverflow.ellipsis,
              ),
              Text('ANOTHER TEXT'),
            ],
          ),
        ),
      ),
    );
  }
}

Screenshots or Video

Screenshots / Video demonstration
[Upload media here]

Logs
Logs
[Paste your logs here]

Flutter Doctor output
Doctor output
Doctor summary (to see all details, run flutter doctor
-v):
[✓] Flutter (Channel stable, 3.16.9, on macOS 14.2.1 23C71
    darwin-x64, locale en-AU)
[✓] Android toolchain - develop for Android devices
    (Android SDK version 33.0.0)
[✓] Xcode - develop for iOS and macOS (Xcode 15.2)
[✓] Chrome - develop for the web
[✓] Android Studio (version 2022.1)
[✓] VS Code (version 1.85.2)
[✓] Connected device (2 available)
[✓] Network resources

• No issues found!

Thanks for the report.
Although I am able to replicate this on latest stable, but not on latest master.
Also, based on the error log, it seems similar to https://github.com/flutter/flutter/issues/135180 in which you can follow-up for further updates.
Closing this as a duplicate.


Update README.md

adapt version updates in readme

Coverage remained the same at 100.0% when pulling 2d7b98629ad35f518f6955c626b86e792db1cb7a on thomaskempel:patch-1 into 6a495950e1893e87f9d19259136d20dc03b9197b on DxCx:master.

thanks!


NIFI-6027: Addressing issue when a user/group is externally removed

NIFI-6027:

Allowing user or group existence enforcement to be parameterized.
Fixing error handling when loading user groups which may have resulted in stack trace leaking.

Thanks, @mcgilman. will review...


wf-recorder in the official Arch repos now

https://www.archlinux.org/packages/community/x86_64/wf-recorder/

Nice to know! Thanks.


Typo fixed in OpenID PKCE auth flow

Corrected incorrect reference to code_challenge to correct reference code_verifier in PKCE auth flow challenge response request.

@cdenicola Thank you for submitting this PR. :+1:
A reviewer has been assigned. PR will be merged as soon as review is cleared. :handshake:


[otbn] Pick size of scratchpad and update design/docs/toolchain to match

We need to decide how big the OTBN scratchpad is. At the moment, the design is documented and implemented to have 2kiB of bus-accessible memory and 2kiB of scratchpad. Should we change this? (e.g. to 3kiB bus-accessible; 1kiB of scratchpad).
See discussion starting from @felixmiller's comment here: https://github.com/lowRISC/opentitan/pull/8892#issuecomment-974272263.
Note: Delaying this decision shouldn't have an impact on D2: the design changes to switch to a different layout are minimal.
@felixmiller, @jadephilipoom, @GregAC

We're getting ever closer to design freeze and we've sort of defaulted to 50:50.
@felixmiller, @jadephilipoom: Speak now or forever hold your peace :-D

This part of Felix's comment in the earlier thread gives me pause:

On the other hand: The reason why we came up with this idea initially, are crypto operations where ephemeral keys are generated (mainly ECIES). In any case, the algorithms we would use there would be ECC based, meaning fairly small keys to be hidden in the non-accessibly window. Even for P-521 and if there are multiple keys, 1k of non-accessible space would be enough.

It sounds like we're probably okay with 2kiB but it might be an issue if we've misestimated the input sizes or add a new algorithm that requires a large buffer -- and on the other hand we are pretty confident we have nothing to lose by making the scratchpad smaller. If that's still accurate, I'm more comfortable with a 3kiB/1kiB split.


sw-6820 amend routing for pagination tests to work

Codecov Report
All modified lines are covered by tests :white_check_mark:
:loudspeaker: Thoughts on this report? Let us know!.


FAI-6269 - TestRails Source & Destination

Description
Add TestRails source & destination
TODO:

SOURCE: stream schemas and tests

Type of change

[ ] Bug fix
[X] New feature
[ ] Breaking change

Not sure why the prepare is failing... looking into it

@willmarks can you please add the new source to the README?


Installation error

Problem encountered on https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install#
Operating System: macos
On mac, installing the SDK is not enough. In addition to the installation, following command needs to be run: ln -s /usr/local/share/dotnet/dotnet /usr/local/bin/

This can come up when the macOS utility path_helper isn't working properly due to a nonstandard shell being used, bad bash profile, or bad bashrc. More info at https://github.com/dotnet/runtime/issues/3603. Creating a symlink yourself seems like a reasonable workaround.

Is this something we should mention at https://docs.microsoft.com/en-us/dotnet/core/install/sdk?pivots=os-macos @dagood? /cc @Thraka

It does seem like a good idea to document it, but I'm not actually sure if I've seen that page before with macOS selected. I'd expect entry points at https://dotnet.microsoft.com/learn/dotnet/hello-world-tutorial/install and https://dotnet.microsoft.com/download/dotnet-core/thank-you/sdk-3.1.202-macos-x64-installer, not sure how to end up there otherwise.


Can you provide PyTorch version？

I didn't use AllenNlp，Is the PyTorch version available？

Hi @Chucy2020, thanks for your question. We are using AllenNLP for managing the configuration files for baselines in this task. You are of course welcome to use PyTorch or any other libraries when implementing your own system if you are participating in the DSTC 11 track.


(#11859) Add f5_vlan type/provider.

Add vlan support.
Add spec test.
Add preliminary v11 support.
Autorequire f5_trunk.
Update README documentation.

Sent pull request against wrong branch.


reactivating smacc2 nav clients for rolling via submodules

@destogl In order to make this PR work we need to have the navigation two stack in a submodule.
I did that here: https://github.com/pabloinigoblasco/SMACC2/tree/feature/navigation_rolling/submodules
How could we change the CI workflows to make this branch build in semi-binary?


#287 Display hotkeys to detach from the container

Thanks, @jesseduffield  for taking the time to review, i have internationalised the text as requested
Please review

@glendsoza I've resolved conflicts but I can't push to your branch so I've recreated this in a separate PR: https://github.com/jesseduffield/lazydocker/pull/465

PR is great btw! I'll add it in the next release


Update shareon.js to include LinkedIn image refresh

LinkedIn url has to include "&latest" so the latest url preview is being used not the cached one.

Just did more testing and the solution is to append the current time to the end of the url (encoded) so that LinkedIn regards it as a new url altogether and fetches the latest preview.

Oh, I think I now understand, what is happening here: LinkedIn caches the URL once they see it, and subsequent updates to the page (esp. its OGP tags) do not get displayed.
I am sorry, but this is out of scope of Shareon. I do not want to fix the peculiarities of other social networks, especially when it requires changing the URL of the page — I will never ever do this.
Thank you a lot for the great contribution, but I am afraid I can't merge it :/


Storage upload in browser does not handle response status code correctly

Describe the bug
Storage upload in browser does not handle response status code correctly on this line:
https://github.com/nhost/nhost/blob/73230eb35a7f435142ec659c06a75aef8b214fcf/packages/hasura-storage-js/src/utils/upload.ts#L90
To Reproduce
Upload invalid file from the browser - the error response will be returned in the fileMetadata field, as if the upload succeeded.
Expected behavior
Upstream error from the storage service is returned in the error field.

Nice! Thanks for reporting this. I actually created a vague issue a couple of days about this too. Will close as this is more detailed and includes a PR.
Thanks!

@dddenis Thank you for reporting. LGTM!
I'll add a changeset to your PR and merge it

@dddenis Can you please check Allow edits from maintainers so I can add the changeset!


Additional test case for practice/luhn that often fails

I've mentored this particular problem for a while, and this is a commonly seen failing test case.

This exercise comes from the problem-specifications and contains canonical data. If you think more needs to be tested here, I think you should first create an issue over there, get them to agree to update the canonical data for this exercise and then add a test case for this. Once that is done, feel free to re-open this PR.


Loading 3rd-party modules

Hi! Can someone help/explain how to properly add/use external modules to this project?
For example, I'm adding immutable using:
npm install immutable --save
After that, I'm trying to link that module inside a component:
import * as immutable from 'immutable';
import {List} from 'immutable';

Nothing helps, it always returns TS2307: Cannot find module 'immutable'. The same for moment for example.

you also need to include the type definitions with typings

you need to include the type definition and can read a little bit about it in the custom-typings.d.ts file. thanks for opening an issue and if you have anymore feel free to open another one


Trigger a full reindex on system startup

As a temporal workaround for #150, the application should trigger a full index rebuild upon startup.

fixed in 5c6921e, as part of #162

As I can see, the default of the configuration option is true:
smarti.indexing.rebuildOnStartup=true

worked as suspected during local test.


Spelling of occured -> occurred

In both build files the occurred word is spelled wrong as it misses a r.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: antonrademaker sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

@antonrademaker your changes have been merged, thanks for your contribution :+1:


Assorted fixes

Fix tests (added container service to the fixture)

#4031 Potential NRE in PackageIndex

most probably index was still being built when session got disposed

#4050 RxSpark function help wrong

old issue, [[ and ]] in RD confused parser. Fixed and added test.

#4036 Change local Docker connection icon in Workspaces

changed style
aligned Containers... to the right and made it hyperlink to match Add

#4046 Rmarkdown preview should respect code chunk options

handle eval
update test baselines

#4051 Bug in parsing of scopes

parser continued past line break
do terminate expression parsing at the line break by returning proper last operation type
added test

#4042 Hang in function quick info

could not repro, but added reentrancy check

OK, review post mortem, need build for BB/integration.


Importing OpenApi document fails when security tag is in the path definition

What I was trying to do
Import an openAPI document into Bruno
What was supposed to happen
OpenAPI was imported successfully
What happened
UI threw and error saying:  Import collection failed. An error occurred while parsing the openAPI collection
Additional information
Opening the console, the following error is shown:
916-5dd5fda478436956.js:formatted:1311 TypeError: e.global.security.getScheme is not a function
    at re (916-5dd5fda478436956.js:formatted:1103:39)
    at Array.map (<anonymous>)
    at 916-5dd5fda478436956.js:formatted:1306:31
    at new Promise (<anonymous>)
    at ie (916-5dd5fda478436956.js:formatted:1199:20)
(anonymous) @ 916-5dd5fda478436956.js:formatted:1311
ie @ 916-5dd5fda478436956.js:formatted:1199
Promise.then (async)
(anonymous) @ 916-5dd5fda478436956.js:formatted:1320
se @ 916-5dd5fda478436956.js:formatted:1317
onClick @ 916-5dd5fda478436956.js:formatted:1388
Oe @ framework-49f1e091cbf6b261.js:1
Ae @ framework-49f1e091cbf6b261.js:1
(anonymous) @ framework-49f1e091cbf6b261.js:1
Ir @ framework-49f1e091cbf6b261.js:1
Ur @ framework-49f1e091cbf6b261.js:1
(anonymous) @ framework-49f1e091cbf6b261.js:1
ss @ framework-49f1e091cbf6b261.js:1
Le @ framework-49f1e091cbf6b261.js:1
Hr @ framework-49f1e091cbf6b261.js:1
Kn @ framework-49f1e091cbf6b261.js:1
Qn @ framework-49f1e091cbf6b261.js:1
916-5dd5fda478436956.js:formatted:1324 BrunoError: An error occurred while parsing the OpenAPI collection
    at 916-5dd5fda478436956.js:formatted:1312:23
    at new Promise (<anonymous>)
    at ie (916-5dd5fda478436956.js:formatted:1199:20)

From the error, it appears that the issue is in packages/brunoapp/src/utils/importers/openapi-collection.js
The exact same file can be loaded into soapUI without issues
Example openApi file
openapi: 3.0.3
info:
  version: 1.0.0
  title: Test API
  description: Test API
paths:
  /users:
    get:
      description: Get list of users
      parameters:
        - in: query
          name: limit
          schema:
            type: integer
            minimum: 1
            maximum: 100
            default: '20'
          required: false
          description: The number of records to return
          example: '100'
      security:
        - my-authorizer: []
      responses:
        '200':
          description: Get list of users
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    id:
                      type: integer
                      description: User id
                      example: '1'
components:
  securitySchemes:
    my-authorizer:
      type: apiKey
      name: Authorization
      in: header

Note that the above openAPI file is just meant to display the error, not meant to be a full API definition.
Additionally, if the security tag is moved outside of the path, then the file loads normally.

I have the exact same issue.
I could only fix this by adding the top-level "security" tag with some default values.
Was there any significant change that produced the error described above?

You are right IceBjerg, if I have  there top-level security tag, then I can also have the path level tag


Inaccurate / wrong error message when setting ignoreLocalSshSettings

application.yml:
spring:
  cloud:
    config:
      server:
        git:
          uri: git@bitbucket.domain.com:7999/confserv/config.git
          ignoreLocalSshSettings: true

leads to error message on startup:
Reason: Property 'spring.cloud.config.server.git.hostKey' must be set when 'spring.cloud.config.server.git.hostKeyAlgorithm' is specified
but should be
Reason: [...] must be set when 'spring.cloud.config.server.git.ignoreLocalSshSettings' is specified

@tschmidt01 Thanks for pointing out this misleading message. Have raised https://github.com/spring-cloud/spring-cloud-config/pull/753 for the team to review in due course.

Closed via 0751f9d


[Bug] Transaction List doesn't render when there are invalid transactions

To recreate this bug:

Replace data in your addressbook.json file to the data below.
Load the jar file.
Transaction List does not display any transactions.

#165 can also reproduce this bug.
Problematic transaction in question (transaction does not involve Self):
"timestamp" : "2023-10-23T20:59:52.442971"   }, {     "amount" : "10",     "description" : "food",     "payeeName" : "Bob",     "portions" : [ {       "personName" : "Ryan",       "weight" : "1"     } ],
{
  "persons" : [ {
    "name" : "John",
    "phone" : "98765432",
    "email"<EMAIL_ADDRESS>    "address" : "Queenstown 872738",
    "tags" : [ "housemate" ]
  }, {
    "name" : "Johnny",
    "phone" : "91112233",
    "email"<EMAIL_ADDRESS>    "address" : "sentosa cove",
    "tags" : [ "housemate" ]
  }, {
    "name" : "Ryan",
    "phone" : "98765432",
    "email"<EMAIL_ADDRESS>    "address" : "311, Clementi Ave 2, #02-25",
    "tags" : [ "friends" ]
  }, {
    "name" : "Jack",
    "phone" : "9888832",
    "email"<EMAIL_ADDRESS>    "address" : "sembawang ave 4",
    "tags" : [ "housemate" ]
  }, {
    "name" : "Bob",
    "phone" : "93432432",
    "email"<EMAIL_ADDRESS>    "address" : "726378 woodlands",
    "tags" : [ "friends" ]
  } ],
  "transactions" : [ {
    "amount" : "25",
    "description" : "bread",
    "payeeName" : "Jack",
    "portions" : [ {
      "personName" : "Self",
      "weight" : "3 / 2"
    } ],
    "timestamp" : "2023-10-23T20:59:52.442971"
  }, {
    "amount" : "10",
    "description" : "food",
    "payeeName" : "Bob",
    "portions" : [ {
      "personName" : "Ryan",
      "weight" : "1"
    } ],
    "timestamp" : "2023-10-23T20:56:44.536182"
  }, {
    "amount" : "25",
    "description" : "bread",
    "payeeName" : "Bob",
    "portions" : [ {
      "personName" : "Bob",
      "weight" : "1 / 2"
    }, {
      "personName" : "Ryan",
      "weight" : "1"
    }, {
      "personName" : "Self",
      "weight" : "3 / 2"
    } ],
    "timestamp" : "2023-10-23T20:53:45.397596"
  } ]
}

Should there be any error messages shown instead?

Additional bug:
The app does not even render fully (e.g. command bar disappears) sometimes when there are irrelevant transactions.
Replace the data in addressbook.json with this instead and run:
{
  "persons" : [ {
    "name" : "Alex Yeoh",
    "phone" : "87438807",
    "telegramHandle" : "@alex_yeoh",
    "email"<EMAIL_ADDRESS>    "address" : "Blk 30 Geylang Street 29, #06-40",
    "tags" : [ "friends" ]
  }, {
    "name" : "Bernice Yu",
    "phone" : "99272758",
    "telegramHandle" : "@bernice122",
    "email"<EMAIL_ADDRESS>    "address" : "Blk 30 Lorong 3 Serangoon Gardens, #07-18",
    "tags" : [ "colleagues", "friends" ]
  } ],
  "transactions" : [ {
    "amount" : "100",
    "description" : "Carpool Subscription",
    "payeeName" : "Self",
    "portions" : [ {
      "personName" : "Bernice Yu",
      "weight" : "1"
    }, {
      "personName" : "Self",
      "weight" : "1"
    } ],
    "timestamp" : "2023-10-13T12:34:56.792"
  }, {
    "amount" : "90",
    "description" : "Hall Dinner",
    "payeeName" : "Bernice Yu",
    "portions" : [ {
      "personName" : "Self",
      "weight" : "8"
    }, {
      "personName" : "Bernice Yu",
      "weight" : "4"
    } ],
    "timestamp" : "2023-10-13T12:34:56.790"
  }, {
    "amount" : "60",
    "description" : "Group Project Lunch",
    "payeeName" : "Alex Yeoh",
    "portions" : [ {
      "personName" : "Alex Yeoh",
      "weight" : "2"
    }, {
      "personName" : "Bernice Yu",
      "weight" : "4"
    } ],
    "timestamp" : "2023-10-13T12:34:56.789"
  } ]
}

Data to recreate with telegram handles:
{
  "persons" : [ {
    "name" : "Alex Yeoh",
    "phone" : "87438807",
    "telegramHandle" : "@alex_yeoh",
    "email"<EMAIL_ADDRESS>    "address" : "Blk 30 Geylang Street 29, #06-40",
    "tags" : [ "friends" ]
  }, {
    "name" : "Bernice Yu",
    "phone" : "99272758",
    "telegramHandle" : "@bernice122",
    "email"<EMAIL_ADDRESS>    "address" : "Blk 30 Lorong 3 Serangoon Gardens, #07-18",
    "tags" : [ "colleagues", "friends" ]
  } ],
  "transactions" : [ {
    "amount" : "100",
    "description" : "Carpool Subscription",
    "payeeName" : "Self",
    "portions" : [ {
      "personName" : "Bernice Yu",
      "weight" : "1"
    }, {
      "personName" : "Self",
      "weight" : "1"
    } ],
    "timestamp" : "2023-10-13T12:34:56.792"
  }, {
    "amount" : "90",
    "description" : "Hall Dinner",
    "payeeName" : "Bernice Yu",
    "portions" : [ {
      "personName" : "Self",
      "weight" : "8"
    }, {
      "personName" : "Bernice Yu",
      "weight" : "4"
    } ],
    "timestamp" : "2023-10-13T12:34:56.790"
  }, {
    "amount" : "60",
    "description" : "Group Project Lunch",
    "payeeName" : "Alex Yeoh",
    "portions" : [ {
      "personName" : "Alex Yeoh",
      "weight" : "2"
    }, {
      "personName" : "Bernice Yu",
      "weight" : "4"
    } ],
    "timestamp" : "2023-10-13T12:34:56.789"
  } ]
}


Update Random.php

Remove "/" and "." character

Coverage decreased (-3.9%) to 89.575% when pulling acc00f5556a0fb771482da7612b90dcf5f4120d0 on lefuturiste:master into 296cd31f16714be924911dc0b1db5cbce0e49db8 on rchouinard:master.

Coverage decreased (-3.9%) to 89.575% when pulling acc00f5556a0fb771482da7612b90dcf5f4120d0 on lefuturiste:master into 296cd31f16714be924911dc0b1db5cbce0e49db8 on rchouinard:master.

Coverage decreased (-3.9%) to 89.575% when pulling acc00f5556a0fb771482da7612b90dcf5f4120d0 on lefuturiste:master into 296cd31f16714be924911dc0b1db5cbce0e49db8 on rchouinard:master.


Simplify adding *-image profile configuration

Given that the profile declarations are in the helidon-se or helidon-mp parent poms, adding configuration in the application pom is either verbose or somewhat ugly.
The ugly solution is to use global properties with fully qualified names, e.g.
<native.image.buildShared>false<\native.image.buildShared>

The more natural solution is to use a configuration element:
<configuration>
    <buildShared>false<\buildShared>
<\configuration>

The only way I know to add that configuration and retain the profile behavior is by duplicating the parent <profile> declaration. Hopefully there is a less verbose way to do this.

If you have a profile like this:
    <profiles>
        <profile>
            <id>native-image</id>
            <build>
                <plugins>
                    <plugin>
                        <groupId>io.helidon.build-tools</groupId>
                        <artifactId>helidon-maven-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>native-image</id>
                                <goals>
                                    <goal>native-image</goal>
                                </goals>
                            </execution>
                        </executions>
                    </plugin>
                </plugins>
            </build>
            <dependencies>
                <dependency>
                    <groupId>io.helidon.integrations.graal</groupId>
                    <artifactId>helidon-graal-native-image-extension</artifactId>
                </dependency>
            </dependencies>
        </profile>
    </profiles>

You can override the configuration per execution like this:
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>io.helidon.build-tools</groupId>
                    <artifactId>helidon-maven-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>native-image</id>
                            <configuration>
                                <finalName>foo</finalName>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

I see; yes, that works. Unfortunately, though, IntelliJ doesn't understand that idiom enough to provide any completions for the supported configuration options. I find those so useful that in my local project I would just copy the <profile>.

So with the current version of IntelliJ, even adding the goal doesn't cause completions to work. This is really frustrating, as it is vastly easier to add configuration when the IDE helps!

Would most of the use cases be covered by using some properties in the configuration that poms can override? Something like surefire.argLine?

We won't get completions, but you can already just set properties in the pom; this is certainly the easiest thing to document.

So, for example, you can just add:
<properties>
    <jlink.image.addClassDataSharingArchive>false</jlink.image.addClassDataSharingArchive>
</properties>

to your pom rather than the entire pluginManagement block. This works for every property that is specific to the plugins because the names are global. The pluginManagement block would still be required for things like project.build.finalname because the names aren’t specific enough.

In the example above, is that property pre-configured in the parent pom for the plugin execution or is it the property mapping of the mojo itself ?

The mojo itself.

Using mojo-mapped configuration properties means we have to point people at our plugin documentation.
The parent pom could be self-documenting if the properties that user can override or set are all declared in it.

Yes, we could do that as well, although you obviously have to navigate to the parent to see them.
We still need our docs to point at something that describes each property, though; Joe's new docs point at the plugin docs for this.

As we have switched to the maven plugin of graalvm native image, I am closing this issue.
Please create a new one if there is an issue for the new approach.


[next]

adds a <BakeShadows> component which can be used to improve performance by "freezing" shadows. https://drei.docs.pmnd.rs/performances/bake-shadows
When inside a suspense boundary, <BakeShadows> will wait until the boundary has unsuspended before freezing shadows. See docs for an example.

Cool cool. changeset and then good to go 👍

i was thinking @DefinitelyMaybe should we deviate from drei here and call this component <FreezeShadows>? Baking is a common term used in graphics but i don't think it's the right word to use here. "Freezing" indicates a little more clearly what the component is actually doing.

Hmm it is an opportunity to be more concise. There's a bunch of different options. One is that keeping BakedShadows means folks from R3F will know what it is. Another is asking the three.js community what they would call it. Could also just called it whatever feels like it fits best, chatgpt gave me a couple of others like: StaticShadows, LockedShadows and FixedShadows.
In short, no right answer here. I'm tempted by keeping it with BakedShadows for ease of any R3F folks that try Threlte out but not firm on that. Not sure how the rest of the team feels, if you don't mind it taking longer we could wait for their input?

Hmm it is an opportunity to be more concise. There's a bunch of different options. One is that keeping BakedShadows means folks from R3F will know what it is. Another is asking the three.js community what they would call it. Could also just called it whatever feels like it fits best, chatgpt gave me a couple of others like: StaticShadows, LockedShadows and FixedShadows.
In short, no right answer here. I'm tempted by keeping it with BakedShadows for ease of any R3F folks that try Threlte out but not firm on that. Not sure how the rest of the team feels, if you don't mind it taking longer we could wait for their input?

yeah I agree. R3F is like the standard for all this kind of stuff so we should probably stay aligned with them.
I merged the next brinch into this one and cleaned up the docs once last time and added a changeset. Should be all set now.


Update TOC.md

OPS Build status updates of commit 01077ab:
:clock10: Preparing: average preparing time is 42 sec(s)

OPS Build status updates of commit 01077ab:
:clock10: Incremental building: average incremental building time is 18 sec(s)

OPS Build status updates of commit 01077ab:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

windows-iotcore/TOC.md
:white_check_mark:Succeeded

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


Expense - Submitting report offline causes errors in the report and red dot w/o error message in LHN

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: <IP_ADDRESS>
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
Issue found when executing PR https://github.com/Expensify/App/pull/32157
Action Performed:
Precondition:

User is an employee of a Collect workspace

Log in to ND as the employee
Go offline
Go to the workspace chat > + > Request money
Create a manual request with currency different than the workspace default currency
Open expense report and submit the expense
Return online

Expected Result:
The report will be submitted without issue when returning online
Actual Result:
Three issues show up

The report submission message moves above the report chat view
Submit button appears again when returning online
In LHN, the expense report shows a red dot but there is no error message in the report. The red dot remains after clicking Submit button again

Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence

https://github.com/Expensify/App/assets/78819774/e642d272-ee75-4227-b436-41d4471fcae8
View all open jobs on GitHub

Clarified that this isn't a deploy blocker here
Reasoning is that it's behind a beta and we are still going to work on this so it should just be added to the wave6 project

Assigning @mountiny since this was related to his PR

So this is a known limitation right now, we do not know the managerID on the open expense report when its created optimistically.

thats why the submission offline fails because we "did not submit to anyone". Was discussed in slack in previous days and we will have to pass down who we need to submit to as part of the Policy data

Discussin gin Slack, we will probably update the nedpoint to not require the manager Account Id as that is not needed for the submitter to know

I will create a new SubmitExpenseReport command for this and that will not require passing the accountID

Continuing to work on this today

I got a draft going but I think we might want to discuss this further a bit

We were discussing how to approach this, I will make a PR to return the submitsTo in this case

Still working on this one

The discussions concluded saying its fine to get the submitsTo into the policy object so I am preparing a PR for it

We got the submitsTo ready so going to use that

PR is up

@aimane-chnaif reviewed the PR.

$500 to @aimane-chnaif for review and testing

Please request your payment via NewDot @aimane-chnaif.

Ah sorry @aimane-chnaif I misunderstood. I've sent you a contract :)

@aimane-chnaif please let me know when you've accepted the offer!

Paid!


update workflow

Codecov Report

Merging #24 (407d33e) into master (0afd3d9) will not change coverage.
The diff coverage is n/a.

@@            Coverage Diff            @@
##             master      #24   +/-   ##
=========================================
  Coverage     74.02%   74.02%
  Complexity      152      152
=========================================
  Files            24       24
  Lines          1567     1567
  Branches        247      247
=========================================
  Hits           1160     1160
  Misses          264      264
  Partials        143      143

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 0afd3d9...407d33e. Read the comment docs.


generate keys.bin

Hi
can anybody help with how to generate keys.bin file with multiple exchanges key set?

You have to generate a file per exchange. I suggest name your file [exchangename].keys.bin. Then you have to write the code to load and apply the keys to each exchange.


restructure: split client and cli

Description
This PR splits the eigentrust library from the CLI application.
Related Issues

#224

Changes

Add cli crate.
Remove environment file usage from the library.
Update client constructor.

.gitignore should be updated to ignore params

.gitignore should be updated to ignore params

Thanks, I forgot to update the path. Params are ignored with the /eigentrust/assets/params-*.bin rule, but I didn't delete them, should I remove them all params?

.gitignore should be updated to ignore params

Thanks, I forgot to update the path. Params are ignored with the /eigentrust/assets/params-*.bin rule, but I didn't delete them, should I remove all params?

Yes, we can remove them


[Feature] Batch Transform support

In addition to real-time inference, need support for batch inference.

Added in v1.9.0.


CPU_HOG

choosing CPU_HOG does not write to the ini file

CPU_HOG option doesn't seem to make any difference - sqlUX still runs 100% on one core whether it's set to 1 or 0. Therefore not sure what the default option should be! (I won't write to ini for the default).

Changed to always write CPU_HOG to ini at the moment.


Barcode software printing

Some printers like in #58 do not support barcode printing or only support a subset of barcodes (as the old Epson printers).
A possible enhancement would be finding a proper library for barcode-printing. (python-barcode?) With this barcode could be rendered in software and then printed as images.
Ideally a new capability in https://github.com/receipt-print-hq/escpos-printer-db would be used to determine whether software-rendering is needed. (See the QR-function as an example)

Anyone tried to print QR Code on POS-5890?
It uses python qrcode correctly?

This thread is about barcodes, not qrcodes. I tested the software qrcode
feature on a ZJ5890K (or similar) when I implemented it, please file a new
issue if you think you've found a bug or opportunity for improvement!
On 7 Jun 2017 10:14 a.m., "icarolongo"<EMAIL_ADDRESS>wrote:

Anyone tried to print QR Code on POS-5890?
It uses python qrcode correctly?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/python-escpos/python-escpos/issues/218#issuecomment-306649695,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AB-_KJY0D20-MdMI5gKvpzDNXdw1_-6Vks5sBet4gaJpZM4NafO9
.

Ok so #222 was merged.
I looked into the hardware barcode method for a possible merge with the software defined method. The hardware method has a lot of hardware-specific arguments such as font type, A or B barcode mode, etc..
So, the software render of barcodes is available but is not in the same method as the hardware barcode. Merging the two methods within one would using a use_software boolean argument is possible but needs some refactoring of the hardware method interface.
Maybe we can close this issue and create a new one if we want the two methods to be merged into one with a work on the method arguments.

I think the real task is splitting the library into low-level Escpos functions (or maybe also those emulating them) and highlevel "layout" functions.
Relevant issues are #176 and #96.
We would have to start with a concept and then implement it. But yeah, considering this issue I think we are done.


Added Creative Commons Logo

Thank you for contributing! Please confirm this pull request meets the following requirements:

[x] I followed the contributing guidelines: https://github.com/github/explore/blob/master/CONTRIBUTING.md
[x] I have no affiliation with the project I am suggesting (as a maintainer, creator, contractor, or employee).

Which change are you proposing?

[x] Suggesting edits to an existing topic or collection
[ ] Curating a new topic or collection
[ ] Something that does not neatly fit into the binary options above

Editing an existing topic or collection
I'm suggesting these edits to an existing topic or collection:

[x] Image (and my file is *.png, square, dimensions 288x288)
[x] Content (and my changes are in index.md)

I originally didn't include the logo as it was unclear to me the rights to use the trademark, however it appears it can be featured here as defined by their trademark policy: https://creativecommons.org/policies#trademark
It states that the use of the logo is authorized under Descriptive uses, in order to help describe the company or license, so long as it does not imply endorsement from Creative Commons.

Just correcting myself, as the commit message is misleading.
Technically it's not the Creative Commons logo that was added, but rather an *icon that describes any Creative Commons license.

Thanks again @SethiPandi!


Tree closed on infra failure "gsutil upload logs" step

Examples:
https://ci.chromium.org/p/flutter/builders/prod/Mac_android platform_view__start_up/1426
https://ci.chromium.org/p/flutter/builders/prod/Linux textfield_perf__e2e_summary/1593

All are caused by timeout on the test step:
Waiting for observatory port to be available

Related: https://github.com/flutter/flutter/issues/77193

Oh, you're right, I missed the blue timeout.

Engine roll reverted at https://github.com/flutter/flutter/pull/83942, autoroller has been paused.

This might need a bisect, but I am suspicious of this change from the Dart SDK roll in this Engine roll: https://dart.googlesource.com/sdk.git/+/fa5da6a944485e62f7bba5761ccbc54f0b80326e @bkonyi

Also /cc @rmacnak-google

Sorry, meant this one: https://dart.googlesource.com/sdk.git/+/a10e038f092b1177748674eaf83c52b3cbf882c3

Oh, I see there's already a revert merged here: https://dart-review.googlesource.com/c/sdk/+/202300. We may just need to wait for a newer Dart SDK to roll into the Engine. /cc @iskakaushik

The broken CL caused ARM32 apps to abort at startup, so if you observe timeouts, then whichever test harness this is is failing to watch for process exit.

resumed the roller, please reopen if after the next engine roll the failures are still seen.

revert has rolled into the engine


paginationBulletRender problem on version 3.4

This is a (multiple allowed):

[x] bug

[ ] enhancement

[ ] feature-discussion (RFC)

Swiper Version: 3.4

Platform/Target and Browser Versions: Version 52.0.2743.116 Built on Ubuntu , running on Ubuntu 16.04 (64-bit)

What you did
Upgrading to version 3.4 the function to customize paginations bullets does not work :
var swiper = new Swiper('.swiper-slider', {
	    nextButton: '.swiper-button-next',
	    prevButton: '.swiper-button-prev',
	    spaceBetween: 30,
	    autoplay: 8000,
        paginationType:'bullets',
	    pagination: '.swiper-pagination',
        paginationClickable: true,
      paginationBulletRender: function (index, className) {
            return '' + (index + 1) + '';
        }
}

Expected Behavior
the function should return 'swiper-pagination-bullet' as className and the index of each single slide
Actual Behavior
[object object ] is returned as index, and a number(the index?) as className

thank you!
it works ;)
But I have a problem with active pagination item.
Thy to drag slides here https://arsmoon.com/ (pagination active class works only with first and last item)
MacBook Pro
MacOS Sierra
Google Chrome


.evaluate returning undefined

It have been for a couple days now, and long long long hours trying to get results back when calling .evaluate. No matter what I try, I get stock here. Using version 3.1.1 I use the following:
horseman.evaluate(function(selector){
  return ($(selector).text());
},'tr[role="row"]')
.then(function(results){
  console.log(results);
});

In the above example, I never get to see the console log. What am I missing?
Is it because the script still running in the background? If so, how do I wait until ready?

The below code works, which makes me think your issue may be specific to the page you're working with. Can you provide a full test case?
horseman
    .open('http://www.google.com')
    .evaluate(function(selector){
        return ($(selector).text());
    },'a')
    .then(function(results){
      console.log(results);
    })
    .close();

I believe I found why it wasn't working. It all depends on the method prior evaluate. If you have a method that returns html, then the method works, but if you have a method that does not return html, then evaluate fails.
Your example above works because .open() somehow returns html, but if between .open() and .evaluate() you place a .wait() or something that does not return any html, then console.log will never get invoke. Dose it makes sense? Have you test this use case?
Please note that I don't know the ins-out of horsemanjs. All I know that in my case, as soon I placed the method .html() before evaluate, then my promise worked and I was able to get the results.

Adding a wait(100) to my example after the .open still works.
Perhaps adding the .html() to your example causes enough of a delay that the page finishes rendering?

Since there has been no response, I am assuming @johntitus was right about the real issue.


Setup speakerinnen with docker

This is a follow up and replacement ticket for https://github.com/rubymonsters/speakerinnen_liste/issues/671.
Scope

[x] Initialize docker
[x] Install essential and additional packages

[x] git curl vim wget
[x] python-software-properties build-essential
[x] ruby ruby-dev
[x] nodejs & npm
[x] Postgres
[x] bundler
[ ] imagemagick libmagick++-dev libxml2-dev
[ ] openjdk:8-jre (needed for ES 2.4)
[ ] Elasticearch 2.4.5

[ ] Set locale
[ ] Set docker entry point (/docker-entrypoint-initdb.d)
[ ] Change database.yml according to postgres configs with docker
[ ] Document docker setup

Referencing #668

I just found that talk: RailsConf 2018: Containerizing Rails: Techniques, Pitfalls, & Best Practices by Daniel Azuma: https://www.youtube.com/watch?v=kG2vxYn547E
Maybe that can be helpful.

@1000miles --> @Powerglove wants to support the project. She wants to work on that issue.

@zaziemo @Powerglove
Hi there, sounds great! Thanks.
Oh, you are right, I noticed that I never pushed it. Sorry about that. I guess it's kind of outdated and a bit a mess so I will push the branch as it as without fixes. Is it okay?

I still have some files in that branch that are yet uncommitted. Not sure if I should also commit and push them. Some of them were generated by Docker if I remember correctly? What should we do?

Hi @1000miles , I think it is fine if you push the files (the yml file and the html). Are the two folders empty? then I guess we won't need them.

@Powerglove No the speakerinnen_data and docker folders are not empty and I believe at least speakerinnen_data was generated that can be omitted, too.
Thanks, I'll try to look into it over the weekend and push it if it's enough time for you?

@Powerglove , sorry, I forgot to reply to your question Have you documented somewhere where exactly you got stuck with solving this issue?. Unfortunately it's not documented but I remember vaguely that I couldn't fully build all containers.
I hope you can work with it for now.


Add update and updateData methods

Added update and updateData methods. Also added a shortcut method for updating.
@rquadling @robmorgan
I'm sure there may be changes needed. Please let me know and I'll implement ASAP.
Thanks for the opportunity to work with you.

I'm guessing I need to fix that to work with 5.4 and 5.5?
Thanks,
Jarvis

So I guess I now know why you're using getMock. I was going to submit a quick PR to replace those with createMock. Not now. :-P

PHP 5.4 is still the minimum requirement for Phinx.

Found a bug in my own further development of my legacy system. Fixed it.

@rquadling Any thoughts / ideas on what I have attempted here? Any improvements?

Added a few comments inline.
This is looking good though.

Awesome. I'll work on this on Monday...
Thanks for your feedback @rquadling.

Well it's late on Monday, but I made it in today! Yay.

@rquadling
Does my latest commit fix your comments? BTW good catches on the SQL injection items. I can't believe I missed them... thank goodness for code reviews!

I've got a few other things I want to see ready by the weekend - though that may travel to Monday/Tuesday as daughter's birthday at the weekend.

Oh. Can you squash the commits? Makes things cleaner for merging.

A thought. The supplying of 'id' as the primary key name ... I have just checked one of our servers. Databases comprising over 60,000 columns. Databases generated by different developers over time 15 years. Just under half the tables have an 'id' column as the primary key. Different application server (over 280,000 columns, 5,000 tables) no column called 'id' at all. You'll probably find as much variation in this as I.
I would suggest though, that most people would have to supply a $primaryKeyName anyway. So, dropping the default would enforce the requirement of supplying a $primaryKeyName.
The only place we supply a value is the default for the referenced columns for \Phinx\Db\Table::addForeignKey() .. and I think that suffers the same issue is that in most cases adding a foreign key will require column names that are rarely going to be 'id'.
Changing that, at this stage isn't a possibility, but something that I'll look into. Defaults are great if they are useful. If not, and you forget to override, unintended consequences ensue. Whereas a mandatory parameter is caught much earlier on.

Happy Birthday to your daughter!
I'll squash the commits.
You're correct, I did that because by default phinx adds an 'id' column to each table unless otherwise specified. I have no issues with making it non-default. I've found two main paradigms to be common id is one, and the other is tablename_id. My recent endeavor is working with a legacy system and they used K most of the time... lol
Since it won't have a default, I'll check it for null or non-string values and throw an InvalidArgumentException. Though really I can just check for non-string values. Sitting here thinking about that scenario though... I don't account for tables with multiple primary key columns... should I handle this scenario as well? Which would then require an array or a string right? I see more test writing... :)
I'll work on the above, and await your input @rquadling, after which I'll squash the commits.
Thanks for your help!

The problem is, if you think it, you have to code it.
Multiple column primary keys is of course necessary, but also, considering this is a generic update handler, it may NOT be even primary or even indexed!
"Update the paid flag on orders where the account is x and the paid flag is not true" for example.
$this->table('orders')->update(['paid'=>true], ['account'=>'x', 'paid'=>false]);
You then get into the issue of how to add where orderDate < '2016-01-01'.
Until we have a full ORM behind Phinx, I think we are going to have to offer update() as an option for simple updates. Multiple keys is fine, but more complex where clauses (including OR or IN, etc.) is beyond this. But you can be pretty sure more will be wanted on this.

@rquadling
LOL, yes sir. I assumed as much, and because of that I didn't want to think past the multiple fields. ;)
Do I need to allow string or array or just require an array whether it's a single value or not?
So are ORM(s) being contemplated? I guess once you start getting more complex like that it does start to make more sense as they have already solved those problems.

I've not been looking into an ORM specifically. I know Rob Morgan was, but I think time constraints have limited his ongoing involvement (which is why I'm here!).
Obviously Doctrine would be a strong contender, but I suspect there are others equally as useful out there. Of course, rolling our own is a possibility, but then at what stage do we become more than just a migration tool with ORM features and not an ORM with migration support? I don't know the answer to that.
I think, for the time being, a single primary key is probably enough. Pretty much every pattern after that gets that level of complexity which needs a better discussion.

Well I fixed it easily enough to whereColumns and no default, however now when I run tests I get Invalid parameter number: mixed named and positional parameters. Previously I used named and positional parameters with the Primary key stuff, and it wasn't complaining. So I guess I can revert back to that if you're saying I don't need to account for multiple WHERE columns.
@rquadling Interesting on the ORM front. Maybe it would be better to have some "Interfaces" that could then be used for anyone to use their favorite ORM. I'm still using Doctrine Fixtures for a portion of my "demo" data instead of seeds as it was easier. :)

For the Where clause columns, it may be simpler to follow the same approach that you've used for the main.
With regard to appropriate interfaces, then create a separate PR. Let's see what grabs the userbase.

@rquadling
Okay never got this committed on Friday... so I hope I'm not too late. I'm awaiting the testing confirmation, but I have squashed the commits...
Hope you have a great weekend!

@rquadling
I'm stuck a bit on these failing tests. I believe it should be calling update once, not updateData as the PdoAdapter doesn't have an updateData (which is why it's likely failing). However, if I change it to update as I expect I get another error all together saying that the Table object doesn't match the Table object.
This is the other error as seen in 43941b9:
1) Test\Phinx\Db\Adapter\TablePrefixAdapterTest::testUpdateData
Expectation failed for method name is equal to <string:update> when invoked 1 time(s)
Parameter 0 for invocation Phinx\Db\Adapter\PdoAdapter::update(Phinx\Db\Table Object (...), Array (...), Array (...)) does not match expected value.

I should say that the tests do not act the same on my system so it's hard to test without doing a ton of commits changing things.

I think I have realized why it wasn't working, but I can't tell you why it was working for some of the versions...  Sorry for the delay.

Mysql : http://stackoverflow.com/questions/893874/mysql-determine-tables-primary-key-dynamically
sqlite : http://stackoverflow.com/questions/10472103/sqlite-query-to-find-primary-keys
mssql : http://stackoverflow.com/questions/3930338/sql-server-get-table-primary-key-using-sql-query
postgres : http://stackoverflow.com/questions/1214576/how-do-i-get-the-primary-keys-of-a-table-from-postgres-via-plpgsql
Using INFORMATION_SCHEMA seems to be a good way - need to manually test that with tables with compound primary keys.
That may work on all DBs.

Is this an indication to head in that direction? If so, I could re-add my unset as you wouldn't be updating primary key columns...

If we think update() can only work with filtering by the primary key, then extracting that info is required to enforce this rule.
As for the unset(), you could be updating a primary key. Especially if you have cascading foreign key constraints.

@rquadling
You're right. I didn't think about cascading keys. We can filter using other fields. I will go through another vamp of the methods to change whereColumns to whereParams so that an array can be provided as $whereParams = ['columnName' => 'filterValue']; This way they can update the columns in the $row, but also filter by the same columns with their original values.
We'll get this thing done ... eventually! Thanks for all of your input and guidance!

@rquadling
I've noticed the use of $var = array(); versus $var = [];. Is this something I should follow? I personally usually choose the [] option, and have double checked it's valid for PHP 5.4. However, I want to follow the guidelines that y'all would prefer. (I'm getting close to my next commit).
Thanks!

@rquadling
Any issue with me adding a $table->getColumnNames() since I don't need column objects and it would save me a loop in my update method? I'm going to add it, and remove if you say no. ;-)

@rquadling
So the more I think about this the less I'm thinking the whereParams will work... Let me see if I can articulate this...
With multiple rows of data to update, you cannot specify a set of whereParams for each $row of update... I started seeing this when I started modifying my tests, my $whereParams would suddenly modify 2 rows at once, and then again the second time (not useful). I think I need the ability (at times) to be able to specify a $whereParams per $row... That being the case... either we don't need the updateData and the use of setData which means you would have to do it through the adapter. (likely the simplest solution) Or, we would allow them to specify a whereParams key in the $row, and parse that out into the parameter on the update method.
Now I await your further input. :)

I decided to go ahead and commit what I have thus far to see if you have any qualms with it, other than the above questions/comments.

As PHP 5.4 is the minimum, [] is OK for arrays.

Is there any reason to not use INFORMATION_SCHEMA all the time? Simpler and consistent across the majority of DBs.

As we already have \Phinx\Db\Adapter\AdapterInterface::getColumns()`, I'd recommend reusing it.

I was originally re-using it, but then I had to loop through that and grab just the names... Are you opposed to adding the getColumnNames or just suggesting?
My thought is that if $row contains a key called phinx_whereParams or something like that, we use that instead of what might be a "default" whereParams supplied to the update method. I wouldn't necessarily have to remove the updateData method, but not sure if it makes much sense to have it.

How about having a new method that calls the old method and filters accordingly. That way, if anything changes regarding column, we don't have 2 retrieval methods to amend.

@rquadling
I can do that... Had thought of that at first, but wasn't sure if it would be faster having less columns in the select statement, but probably not enough to warrant the possible future maintenance. I'll get on that.
What about the whereParams per row?

If you have multiple rows of data to update, surely you would supply the where clause with the appropriate data being amended.
UPDATE table SET col1=val1 WHERE col2=val2;
That may affect 1 row or many rows.
Can you supply some examples of the issue? I'm not sure I see it.
If you are only supplying data (col1=val1), than that applies to ALL rows, and would be errored by the DB for FK or duplicate key issues.

So I may be over thinking the issue... I'm trying to really think of a good example, but I guess if you want different where parameters for some of the rows of data, but you have processed ALL of the data... Like what I'm doing ... I'm going through and generating UUIDs for each and every record so I really need it to update each and every row, but I'm doing that 1000 rows at a time.
That make more sense?

The columns in the update's SET clause do not need to be present in the WHERE clause.
The more I think about this, unless we have appropriate clause builder routines, this feature is going to not be worth the effort, considering you can easily write queries to capture the exact intent.
Take a single column and a single value.  So, for a single nvp, potentially 10 different representations. How to express that simply and not use SQL.
With more than 1 nvp, are you AND or OR?
And this scales to silly numbers very quickly when you introduce more pairs.
I think, without a very clear and defined goal, I'm not there is an easy way out. Maybe introducing an optional dependency on a query builder would be the best option here.
Use Phinx and you get row update based solely on primary key (no primary key, no updating).
If you want to use more complex queries, then a builder is required.
So either we pick one or we abstract from several a common interface and allow the user to decide which one they wish to use.
What do you think?

You are correct the columns in the SET clause do not need to be in the WHERE clause. My example was the need to update each row with a separate value, and the only way I can see of doing that is allowing a special key in the $row data to allow for that.
I fear ultimately you are correct that we are only dealing with a subset of users and to fully get everyone we will want some sort of a query builder. However, I also believe we would service a large portion of that subset with the simple "AND" where type. Also instead of a query builder, we could add a third column to the whereParams that would allow you to specify the operator... I know that's getting close to a query builder... which a QB would simplify the process quite a lot.
I think it would be worth looking at a few in order to determine if we want to have a common interface that can then have "adapters" to each one... or we through the same process can pick one.

Is it really worth the effort?
Considering that if a user is already using an ORM, then they can use it in Phinx already.
Step 1 - Create their own migration base class from \Phinx\Migration\AbstractMigration.
<?php
namespace MyApp\Migrations;
abstract class AbstractMigration extends \Phinx\Migration\AbstractMigration
{
  /**
   * @var DB $db
   */
  protected $db;
  public function init()
  {
    // Instantiate their DB here, preferably from a container so
    // they get a reference to it for subsequent migrations.
    $this->db = DI::make('DB');
  }
}

Step 2 - Set the migration_base_class config option to MyApp\Migrations\AbstractMigration.
Step 3 - Use $this->db in the migrations, utilising all the models and repos you have in play.

@rquadling
Just got back from vacation and going through all of this again. I was unaware that I could integrate my ORM by making my own abstract migration... That's an interesting concept, and if that's the case, then you are probably right this will end up being unnecessary though it sounds as though @robmorgan was still considering some of the functionality I have mentioned here...
I'm going to explore this a bit... Thanks for suggesting it!

@BallisticPain no I'd like to unofficially make Phinx an ORM considering many people already add it to their projects and then add an additional ORM to make update/delete queries etc. Thus they could avoid multiple PDO connections, db config, Composer dependencies etc. As much as I hate adding new features, this is one I think is necessary.

@robmorgan, some ideas/suggestions/thoughts. None of this is a particular direction that I would go in, so very happy to be directed by what you feel is appropriate.
So, some thoughts.
I think the option of swapping out phinx's adapters to use an external ORM would be more efficient. If (for example) my app is Doctrine based, with all the beauty that it provides, it would make sense to be able to "just use it" for my migrations also. If I were to use a different DBAL/ORM, could we provide Phinx2xxxx wrappers?
As there is a good amount of abstraction within Phinx already, is this a potential possibility?
And, more importantly, easier to achieve and support?
There is another factor here. Migrations are not "core" to a product (sure, they are core to THIS product). As a sitting-on-the-edge utility, the amount of work a user has to go through may be a little more than they need for some features in their main product.
Having Phinx work the way Phinx works (for better or worse) is OK I think. So rather than integrating/supporting an external ORM, we do our own.
I would say that that would be both time consuming to develop/test/maintain and be non DRY. There are already many well developed/tested/maintained DBAL/ORMs out there. Can't we "just" pick one?

@rquadling Good points...
@robmorgan Look forward to your response(s)...
My personal opinion is that if Phinx could create adapters or even the interface for adapters and maybe host some of the primary adapters and allow others to "plugin" to the ORM/DBAL systems that are out there it will keep y'all agnostic of the other tools in someone's toolbox, but give that extra bit of functionality without having to add anything additional to Phinx core.
I like the idea of Phinx sticking to it's core utility which is migrations. Though I definitely could see some value in expansion. If y'all believe you can provide additional or better value to the existing ORM/DBAL's then I say go for it.
Thanks for letting me be a part of this conversation and attempting to contribute to your project. Proud to be working with y'all.

@rquadling @robmorgan
Thank you both VERY much for your time on my PR and this project. It seems that at this time, this feature is too complex or too limited to implement currently. I don't have anytime left to continue it's integration. I'm closing this PR. Hopefully it will be useful to those who come after. I must revert my branch back to what's working for our project in order to move forward with my project and also keep up with the latest changes here.


Point gdd.ipynb file link to the GitHub file

Problem: The relative link for the gdd.ipynb file doesn't work on https://microsoft.github.io/IoT-For-Beginners/#/2-farm/lessons/1-predict-plant-growth/assignment
Solution: Changed it to point to the file on GitHub instead.

The link works on GitHub (the link you mentioned) but not on the generated site here (404 error):
https://microsoft.github.io/IoT-For-Beginners/#/2-farm/lessons/1-predict-plant-growth/assignment
Could you point me to the script where this can be changed?


Partitions label changes, total resinOS space and other minor tweaks

Connects to https://github.com/resin-os/resinos/issues/126
Fixes https://github.com/resin-os/resinos/issues/195
Fixes https://github.com/resin-os/resinos/issues/173
Fixes https://github.com/resin-os/resinos/issues/104

This PR should be complete when the partition name change is also done for the edison: https://github.com/resin-os/resin-edison/blob/master/layers/meta-resin-edison/recipes-bsp/u-boot/files/edison.env#L5

Tested on rpi2 and beaglebone


Help setting up a personal Microsoft live.com account

Hi:
Please forgive me as this web interface and OAuth2 stuff is very new to me.  I finally got to configure and run the precompiled Windows version of emailproxy.  Since Microsoft is removing non OAUTH2 log ins as of Sept 15, it would sure be nice to get this working, but I'm having problems getting it to work with my live.com (Microsoft) account.  I have no business account and don't want to pay for Azure products.
So far I've logged into Azure and created a ClientID and ClientSecret, put them into the emailproxy.config file, along with modifying the config file in the [account setup] section for<EMAIL_ADDRESS>(now [xxxxme.live.com])
I've also modified Outlook 2007 to using my live.com email address and the proxy server settings (<IP_ADDRESS>) as the "incoming" and "outgoing" server with the new port numbers (1995 and 1587).  When I do a "Send/Receive" in Outlook, I get a message that authorisation is needed, so I goto "Authorise account and the Live account that appears there and enter name/password. The next thing that happens is I get a window that says "Were unable to complete your request" and a mention that the redirect_uri is not valid (see Azure0.jpg)
So then after going to Azure and selecting View "Entra ID", I get 5 pop ups that say it couldn't get access tokens (Azure1.jpg), so I click "ignore" for each one. Then I click "add" and "App Registration" and fill out the info and get an ID (Azure2.jpg, Azure3.jpg).   I then fill out or review "Authentications" and "API permissions" (Azure4.jpg, Azure5.jpg) and all looks ok except I don't know what to fill in for redirect_uri.  This was setup during creating the ID with "WEB" and checking the box
"Accounts in any organizational directory (Any Microsoft Entra ID tenant - Multitenant) and personal Microsoft accounts"
(Note: I followed "https://support.heateor.com/how-to-get-windows-live-client-id-and-client-secret-key/" to generate the ClientID and ClientSecret and then copied them into the emailproxy.config file.
When I run it with debug on and ask to get mail, the emailproxy log file reveals that it looks like it's starting to negotiate a connection, but fails.   Log live.log attached.
If you or one of the other owners of this repository can help, I'd sure appreciate it.  As I said last time, I'm retired so once I figure this out I could take time to document the proper setup for this very basic use of your program so that hopefully others don't have to bother you with this.
I also have a couple of gmail accounts, but they use app passwords for now, and that works fine for the time being. Eventually I'll change these over too, but there isn't the rush there is for this Microsoft account that needs to be done by Sept 15th.
Thank you,
Rick Groome

Live.log

It's unlikely you'll be able to get this working with a free account and an Entra ID configuration you've created yourself. I'd recommend using this configuration and reading through other issues where people have got this working (#259, for example)


Idea: Ability to utilize alternative binary locations instead of just Oracle

In my opinion it is difficult to figure out what values to put in the variables to download a different jdk version than the default (due to Oracle's site). What do you think of the idea of utilizing alternative binary download locations in addition to the Oracle site. For example, one could utilize the AdoptOpenJDK project's Github published binaries:
https://github.com/AdoptOpenJDK/openjdk11-upstream-binaries/releases
https://adoptopenjdk.net/
Other options include Red Hat or Amazon Corretto.
We could consider the capability to download from any number of sites. I have a couple ideas of how to accomplish this and make it more simple. For example, you could utilize a conditional where if an alternate download file name and url are specified, it utilizes that instead of the Oracle version.

Dear @crosscontrol!
First of all, thank you for reporting an idea :+1: You are the first issuer :1st_place_medal:
As you probably know, I already have AdoptOpenJDK role here: https://github.com/KAMI911/ansible-role-java-adopt-open-jdk11
I think it is a great idea to support all common and popular OpenJDK installer in one Ansible Role. What about to introduce java_provider or java_dist variable to select OpenJDK, AdoptOpenJDK and Corretto values? Probably I will not build support for Oracle, since it is hart to test them when Oracle hide the download under a login screen. Of course If someone puts the Oracle JDK installer next to the role it will works. Another idea is to support all of them in separated branches (or repos) and roles. This way is easier to provide download and run feeling on Ansible role (don't have to do minimal configuration, just get the latest LTS version). What do you think about?

Hi @KAMI911,
My pleasure, I try to help when I can. :)
As for the different options, I like your idea of adding variables like that. I think it would be easier to put it into one repository and make the default the OpenJDK version since that will be what most people will want. Then if someone wants another version they can easily configure it and we can include examples on how to do that. Having one repository will hopefully keep it all up to date and reduce maintenance across different repos. I agree about the Oracle JDK.
What do you think?

I will pick up this issue again.


add a shark ci

This only adds support for llms. Will migrate to a shared sh script or python file in shark that runs all desired models once ean adds sd support


rename scripts to parcels_scripts

Since the utility scripts in the scripts directory are specific to Parcels, it probably aids clarity to rename the directory to parcels_scripts or similar. Then, one could call from parcels_scripts import convert_IndexedOutputToArray and similar

Just discussed with @mlange05, and thinking that moving them to a new parcels/scripts directory would be easier, since then users can simply invoke from parcels import plotTrajectoryFile etc.
I will make this change soon


Not actually building when it says it does

When running with elm-live, as soon as I make a change it says it is building and succeeds. But the change does not appear in the built elm.js file. Also, if I intentionally introduce a compilation error, elm-live still reports success. Here is the command I am using:
elm-live src/Main.elm --pushstate -- --output=elm.js
Am I missing something or is this an actual bug? I am running version 4.0.2 of elm-live.
Work-around is to quit elm-live, do a regular elm make and then restart elm-live again. Extremely frustrating and kind of defeating the purpose. But I must use elm-live since reactor does not work with client-side routing.

I am also experiencing this. I need to remove elm.js and re-save my code for it to actually build.

This should not be the case. Are you able to share your setup?

I'm running elm 0.19.1 on w10, not using parameters. This only happened when I was using the --output parameter.

The output parameter is a very common parameter that everybody use. So I think is about something else. It is difficult to tell without any other information.

I just tried just doing elm make src/Main.elm --output elm.js, which is broken as well, so I guess this isn't (exclusively) a problem with elm-live. Elm-live does say the compilation is successful though, which is misleading.
First build:

elm make src/Main.elm --output elm.js
Success! Compiled 1 module.
Main ---> elm.js

Build when elm.js exists:

elm make src/Main.elm --output elm.js
Compiled in DEV mode. Follow the advice at https://elm-lang.org/0.19.1/optimize for better performance and smaller assets.

Have no clue what's going on here.. seems like elm.js is being executed instead of overwritten? I should open a ticket over at elm/compiler.

"Compiled in DEV mode..." is usually a message you get in the browser console. Are you getting that message in the terminal?

@choonkeat That makes a whole lot of sense! I'm not able to test it right now, but you're probably correct.


DUO110: false positive on re.compile

The following code triggers DUO110 which is regarding compile built-in, not the re.compile
from re import compile, search

class CustomValidator(object):
    digits = compile('[0-9]+')

Good catch!
Tracking my thoughts here:

There may be some overlap here with improving BadModuleAttributeUseLinter (#1)
We should improve BadBuiltinUseLinter such that it can detect if a builtin function has been overwritten by an import

Thanks!

@scorpp,
This false positive will be gone in the next release of Dlint :)


vim-airline with xterm display problem

Versions

vim 7.4
vim-airline 1dc8ea (current master)
xterm 322-1

Bug description
vim-airline causes some kind of error and displays a regex expression(?) on the line above the airline.
It also moves the line number one up (starting with 2) and displays the second line, although it is actually the first. The content of line number 2 is still displayed, until you get into insert mode.
Highlighting the lines and moving to the bottom rerenders the view and it is displayed correctly again.

This is how it looks after opening a file with vim test.txt:

The problem does not occur if vim is opened in bare mode.
Switching to branch 535 solves the problem, so it seems to be confined to the currrent master branch/commit. It also doesn't occur using i.e. rxvt.

Am 2016-02-11 13:29, schrieb lecagot:

VERSIONS

vim 7.4
vim-airline 1dc8ea (current master)
xterm 322-1

BUG DESCRIPTION
vim-airline causes some kind of error and displays a regex
expression(?) on the line above the airline.
It also moves the line number one up (starting with 2) and displays
the second line, although it is actually the first. The content of
line number 2 is still displayed, until you get into insert mode.
Highlighting the lines and moving to the bottom rerenders the view and
it is displayed correctly again.
[1]
This is how it looks after opening a file with vim test.txt. The
problem does not occur if vim is opened in bare mode:
[2]
Switching to branch 535 solves the problem, so it seems to be confined
to the currrent master branch/commit. It also doesn't occur using i.e.
rxvt.

Looks like ansi escape sequences (Device Control Strings) that are not
correctly parsed by vim.
What is your terminal settings?
Best,
Christian

Am 2016-02-11 13:29, schrieb lecagot:

VERSIONS

vim 7.4
vim-airline 1dc8ea (current master)
xterm 322-1

BUG DESCRIPTION
vim-airline causes some kind of error and displays a regex
expression(?) on the line above the airline.
It also moves the line number one up (starting with 2) and displays
the second line, although it is actually the first. The content of
line number 2 is still displayed, until you get into insert mode.
Highlighting the lines and moving to the bottom rerenders the view and
it is displayed correctly again.
[1]
This is how it looks after opening a file with vim test.txt. The
problem does not occur if vim is opened in bare mode:
[2]
Switching to branch 535 solves the problem, so it seems to be confined
to the currrent master branch/commit. It also doesn't occur using i.e.
rxvt.

Try configuring xterm like this:
http://www.leonerd.org.uk/hacks/hints/xterm-sensible.html

I have the following settings in ~/.Xresources (additionally some color scheme settings for solarized):
XTerm*faceName:			Terminus:style=Regular:size=8

xterm*utf8: 1
Xft.dpi: 180
Xft.autohint: 0
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb

Disabling the color scheme settings and running xterm with just the settings above:

Disabling all settings in ~/.Xresources:

Am 2016-02-11 14:23, schrieb lecagot:

I have the following settings in ~/.Xresources (additionally some
color scheme settings for solarized):
XTerm*faceName:         Terminus:style=Regular:size=8
xterm*utf8: 1
Xft.dpi: 180
Xft.autohint: 0
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintfull
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb
Disabling the color scheme settings and running xterm with just the
settings above:
[1]
Disabling all settings in ~/.Xresources:
[2]

Try to add those settings from the link I gave. Also what is your $TERM
variable
and what is ':set term?'

Try configuring xterm like this: http://www.leonerd.org.uk/hacks/hints/xterm-sensible.html

With the settings from this link I get:

So it seems to solve it. However, for a different file (ft=vimwiki) I still get a similar behaviour:

Also what is your $TERM variable

$ echo $TERM
xterm-256color

and what is ':set term?'

term=xterm-256color

I think this is no bug of airline. Probably a bug of either vim or the terminal. However I think this is a duplicate of #393
See here for a workaround.

thanks for your help!

the following setting in vimrc solves the problem:
set term=xterm

or
set term=builtin_xterm


Question/Bug? - having manifests calculated dynamically breaks build

I have a case when I want to introduce a convention where all my dynamic modules/components will be in dynamic-modules folder. So instead of
const manifests: DynamicComponentManifest[] = [
  {
    componentId: 'message',
    path: 'dynamic-message', // some globally-unique identifier, used internally by the router
    loadChildren: './dynamic-modules/message/message.module#MessageModule',
  },
  {
    componentId: 'dialog',
    path: 'dialog',
    loadChildren: './dynamic-modules/dialog/dialog.module#DialogModule',
  },
];

... wrote this:
const ids = ['feature1', 'feature2', 'feature3'];
export const manifests: DynamicComponentManifest[] = ids.map(id => {
  const m: DynamicComponentManifest = {
    componentId: id,
    path: id,
    loadChildren: `./dynamic-modules/${id}/${id}.module#${capitalizeFirstLetter(id)}Module`
  };
  return m;
});
// ... later in module imports:
DynamicComponentLoaderModule.forRoot(manifests),

At build time I get an error:

ERROR in Cannot read property 'loadChildren' of undefined

Do you have any idea how to fix that?

I think it's because this line of code, try to comment it


Generating easier-to-understand verification conditions

@barrettcw has indicated that it is really difficult to understand the verification conditions generated by Boogie when debugging performance problems at the SMT level. There are many issues including:

mangling of names
inlining of functions
encoding of control flow in non-obvious ways

@barrettcw will chime in with thoughts on the major (and possibly ranked) pain points. He might also want to chime in on low-hanging fruit that is likely to have large impact on debugging.

One easy thing to do is for Boogie users to prefer {:define} to {:inline} for functions.  {:define} is a new feature I added maybe a year ago.  It adds a function definition instead of inlining.  SMT solvers then have the choice to inline or not.

For name mangling, it would be great if there was an easy way to trace back a name to where it came from in the Boogie source.  Some suggestions include adding comments to the SMT file and using names from the Boogie source whenever possible.

Another suggestion is to have SMT assertions match Boogie lines of code whenever possible (again with some annotation about the line numbers).  This would go a long way towards making the SMT files readable.

In general, it would be great if some thought were given to the look and feel of generated SMT files.  I know that Boogie users hope to never look at those files, but if there's an issue in the solver interface or a performance problem in the solver, it's really hard to debug with the currently generated files.


rats-tls: build failure from scratch

Follow the readme of rats-tls:
cmake -DENCLAVE_TLS_BUILD_MODE="sgx" -DBUILD_SAMPLES=on -H. -Bbuild
make -C build install

A build failure occurs:
[ 16%] Building C object src/crypto_wrappers/openssl/CMakeFiles/crypto_wrapper_openssl.dir/cleanup.c.o
In file included from /root/inclavare-containers/rats-tls/src/crypto_wrappers/openssl/cleanup.c:10:
/root/inclavare-containers/rats-tls/src/crypto_wrappers/openssl/openssl.h:10:10: fatal error: openssl/bn.h: No such file or directory
 #include <openssl/bn.h>
          ^~~~~~~~~~~~~~
compilation terminated.

It is pretty unfriendly to new user.

This error should happend at the situation of bad network connection.
I have change the code download mode.  Let's watch this issue for a while.

Has been soloved in this commit


Add com.snowplowanalytics.snowplow.r2f/removal_criteria/jsonschema/1-0-0

Number of issues to resolve by the reviewers:

[ ] The list of acceptable pojo fields has simply been copied from PII, but do they all make sense for R2F or could they lead to removing data for multiple people?
[x] Is r2f an acceptable name?
[x] Is r2f in an acceptable namespace (com.snowplowanalytocs.snowplow)?

Let's keep the naming discussion on the other thread.
I think the list of acceptable pojo fields is a really interesting question. Interested in @yalisassoon's thoughts here.

@chuwy Thanks for that:
In regards to:

Also, I'm sorry if it was discussed anywhere already, but shouldn't it contain array of fieldName/value pairs? Running a job just to delete one value sounds wasteful for me.

There will be a list of them. This is a schema on each line of the list.

Actually @knservis @chuwy I think this is a non-issue and we don't need to wait on Yali - for two reasons:

We have the dead man's handle which should stop catastrophic event deletion through a poorly configured forget file
Reduce to the absurd, all properties will eventually move out of atomic.events into schemas (this is the atomic.events refactor), and therefore worrying about guarding certain fields in the POJO for now, is not time well-spent (as those fields will all ultimately be up-for-grabs in the future)

TL;DR we can proceed with the current list of fields.

Thanks @alexanderdean. In which case @alexanderdean @BenFradet and @chuwy is there something else remaining in this PR?


make user-agent configurable

I made user-agent configurable while its default value is the same as before grpc_health_probe.
If there is any concern, please let me know

I signed the CLA

Do you need a release with this?

Do you need a release with this?

yeah

enjoy v0.3.0.


Whitelist $is_IIS to $wordpress_mixed_case_vars

Probably not often-used, but the global $is_IIS it is giving me a warning in an otherwise pristine coding-standards-adhering file :-(

Inspired by this PR, I just looked at the Global Variable Codex page and see a number of other variables which you might want to add to the PR:

$is_NS4
$is_macIE
$is_winIE
$is_IE

Alternatively, I can open a new PR to add these to the list.

@JDGrimes @jrfnl Thanks for pointing that out, removed the $ and added the other variables to this pull request.

@barryceelen Thanks for adding these & fixing the $. The PR looks good to go IMO!

Thanks @barryceelen. 👍


Add FPS check in providers

I've added an FPS check in the OpenSubtitles provider and flat out skip the subtitle (matches=[]) if the FPS differ from the detected video file's FPS.
here, here
This fixes a lot of out-of-sync subs. Only works with enough info about the video file, though.

Those 2 links were moved: 404


Some cleanup of check_logfile()

This PR cleans up some things that gave me trouble when I was testing out PR #1089. I also did a pass on the docstring.
Code changes:

If logfile is not supplied, construct full path based on jobname, step, and index. This makes this function more usable in a user's scripts, right now it is implicitly designed to run inside the task directory.
Make default behavior for 'index' consistent with 'step' (use ['arg', 'index'] instead of first item in flowgraph)
raise exception if no step or index provided (otherwise this bubbles into a fatal error, since these are needed to find regexes)
Close the report files when done. Python garbage collector probably handles this, but it's good practice
Fix inconsistent indentation

Docs changes:

"logged" instead of "displayed to STDOUT" in docstring, since errors are printed to stderr (and logging module can have output redirected)
Specify behavior of None values in docstring
Fix example

Thanks, should be all set now!


deps: Bump kopia and restic versions in kanister-tools image

Change Overview
Update restic to v0.16.5
Unpin kopia version (use master branch)
Pull request type
Please check the type of change your PR introduces:

[ ] :construction: Work in Progress
[ ] :rainbow: Refactoring (no functional changes, no api changes)
[ ] :hamster: Trivial/Minor
[ ] :bug: Bugfix
[ ] :sunflower: Feature
[ ] :world_map: Documentation
[ ] :robot: Test
[x] :building_construction: Build

Issues

fixes #issue-number

Test Plan

[ ] :muscle: Manual
[ ] :zap: Unit test
[x] :green_heart: E2E

@hairyhum Let's split the upgrades into independent PRs

Unpin kopia version (use master branch)

Why?

What's the reason behind this change?

The version we use is quite old now and missing some dependencies updates, which triggers security scanners.
We don't have any other way to determine version to pin.
Alternatively we could pin the current master, but we'll have to do that again in the future, which is an option.

Replaced by:
https://github.com/kanisterio/kanister/pull/3062
https://github.com/kanisterio/kanister/pull/3063


process.env.X not overrided by my Env variable.

Version
v2.10.2
Reproduction link
https://jsfiddle.net/
Steps to reproduce
Hi.
I can't find why I'm not able to display env variable in a page or use it in a fetch method ?
I override the default env variable with kubernetes secrets.
The oauth package env are well overrided by my kubernetes secrets environment variables (oauthHost, oauthClientID and oauthClientSecret) !
But when I try to display the variables, default variable are shown...
Here is my dependencies in package.json :
  "dependencies": {
    "@fortawesome/free-regular-svg-icons": "5.11.2",
    "@fortawesome/free-solid-svg-icons": "5.11.2",
    "@nuxtjs/axios": "5.8.0",
    "@nuxtjs/dotenv": "1.4.1",
    "@nuxtjs/pwa": "^3.0.0-0",
    "@riophae/vue-treeselect": "0.4.0",
    "body-parser": "1.19.0",
    "bootstrap": "4.3.1",
    "bootstrap-vue": "2.0.4",
    "consola": "2.10.1",
    "jquery": "3.4.1",
    "nuxt": "2.10.2",
    "nuxt-fontawesome": "0.4.0",
    "nuxt-i18n": "6.3.0",
    "nuxt-oauth": "2.2.0",
    "nuxt-webfontloader": "1.1.0",
    "sass": "1.23.3"
  },

Here is my nuxt.config.js for catch the env variable from kuberetes secrets
export default {
  mode: 'universal',
  /*
  ** Environment variables in .env
  */
  env: {
    versionTag: process.env.TAG,  // env variable from .env file
    oauthApiHost: process.env.OAUTH_API_HOST || 'https://api.oauth.io/',
    oauthApiUser: process.env.OAUTH_API_USER || 'oauth-user',
    oauthApiPassword: process.env.OAUTH_API_PASSWORD || 'default_password',
    oauthID: process.env.OAUTH_CLIENT_ID || 'abc'
  },
...
buildModules: [
    // Doc: https://github.com/nuxt-community/eslint-module
    // '@nuxtjs/eslint-module'
    ['@nuxtjs/eslint-module', {
      'vue/html-self-closing': ['error', {
        'html': {
          'void': 'always',
          'normal': 'never'
        }
      }]
    }],
    ['@nuxtjs/dotenv', { systemvars: true }]
  ],
...
oauth: {
    sessionName: 'Manage',
    secretKey: process.env.SECRET_KEY || 'key-manage',
    oauthHost: process.env.OAUTH_HOST || 'https://api.oauth.io/oauth2/',
    oauthClientID: process.env.OAUTH_CLIENT_ID || 'abc',
    oauthClientSecret: process.env.OAUTH_CLIENT_SECRET || '123',
    scopes: ['openid', 'profile'],
  },

And my index.vue :
<template>

          - OAuthId : {{ oauthId }} => Display : abc
          - OAuthPass : {{ oauthPass }} = > Display : default_password

</template>

export default {
  data () {
    return {
      oauthPass: process.env.oauthApiPassword,
      oauthId: process.env.oauthID,
}

For the test I display the oauthClientID in a template and it display the default value set in my config. But the auth module works well and use the kubernetes secret value ???
Thx a lot.
What is expected ?
Display the overrided env variables
What is actually happening?
Display the default variables set in the nuxt.config.js

This bug report is available on Nuxt community (#c9995)

env variables are build time. So the ones that are set when you build your app is the one that beeing used, not the ones  that youj are using to start app

Hummm.
If I understand, env variable injected are use only for the build time and after forgotten ?
It's not really that I understand when I read the doc : https://fr.nuxtjs.org/api/configuration-env/
If the variables are forgotten do you know the best solution and the more secure one (because it's secrets) for record some variables injected in the start app and reuse this variables in pages and fetch function ?
I want to be able like in my django app to inject kubernetes secrets variables that I catch in my settings.py (VERSION = os.getenv('VERSION') and get back in my views (version = settings.VERSION) for sending them to the template.
Thx a lot again for your help.

Not sure what you mean by forgotten. Basically it will replace process.env.VAR in your code with actual var value at build time. And it will work the way you described, but it only set during build time not runtime.
see https://github.com/samtgarson/nuxt-env for runtime env vars

I will Check this lib.
Thx a lot :)

The lib works well for common env vars, but i not able to catch my secret variable (variable with the parameter secret: true).
I have posted an issue in the github code project.


Moment Not Defined When Using With Angular

I am trying to use Moment in my MEAN stack app (actually need it to get the Angular-Bootstrap-Calendar to work)
My angular app declaration is as follows:
var app = angular.module('MyApp',['ngRoute', 'ngResource','colorpicker.module', 'mwl.calendar']);
Below I define a controller that will be responsible for doing the calendar-related things:
app.controller('Calendar', function(moment) {
    var vm = this;

    vm.calendarView = 'month';

    console.log(typeof(moment));

    vm.viewDate = moment.startOf('month').toDate();
    vm.isCellOpen = true;

  });

When I go to the route corresponding to the Calendar, I get the following error:

TypeError: Cannot read property 'startOf' of undefined

Is there something simple that I am missing? Or is there a know issue when trying to use Moment with AngularJS?

I can see in your code that you are calling:
moment.startOf('month').toDate();

This syntax is wrong - it should be:
moment().startOf('month').toDate();

This is the most likely cause of your error, provided that you have loaded moment into the global namespace.
Regardless of your syntax error, you should be using some methodology to wrap moment and inject it. This will help you with any unit testing you wish to do in the future. One way of doing this is described here:
http://stackoverflow.com/questions/23727411/how-to-get-full-momentjs-api-inside-angular-view
In addition, this example uses loDash, but moment would be possible to use in this way as well.
http://www.jvandemo.com/how-to-properly-integrate-non-angularjs-libraries-in-your-angularjs-application/
That help?

I can see in your code that you are calling:
moment.startOf('month').toDate();
This syntax is wrong - it should be:
moment().startOf('month').toDate();

I tried it both ways after noticing in moment.js file some comments about deprecating moment(). Either way, I did not make a difference.
I shall look through your links and see if they can get me going.

I was able to get it working by running

npm install angular-moment

and including it in my Angular application's dependencies.
Lastly, this is how I injected the moment:
app.controller('Calendar', function($scope, moment) {
    var vm = this;

    $scope.calendar = new moment();

    vm.calendarView = 'month';

    console.log(typeof(moment));

    vm.viewDate = moment().startOf('month').toDate();
    vm.isCellOpen = true;

  });

This can be closed now.


DRS_System.py

Done bro Sent from Mail for Windows From: 50nuSent: 07 October 2022 03:11 PMTo: sonumahajan/All_Program_helperCc: Kushal Pareek; AuthorSubject: Re: [sonumahajan/All_Program_helper] DRS_System.py (PR #705) you can follow me on github ond give star to this repo.—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you authored the thread.Message ID<EMAIL_ADDRESS>


Update README.md

The Current implemented version (in the PnP Provisioning Engine) was still referencing 201605 schema version while 201705 schema version is implemeted as far as I know. Couldn't quickly find official statement on this but verified by extracting a provisioning template using PowerShell and looking at the schema version.

Hi @paulpascha,
Thanks, you're right. That's a leftover issue. However, I cannot merge it into master, I will apply the fix to the experimental branch and I will merge it into the upcoming 201801 schema. Thanks.


Feature: Arduino will automatically detect and configure the Bluetooth module's baud rate.

Added code during "setup" to detect if the Bluetooth baud rate is not configured for 115200, if it is not then the serial interface is restarted at 9600 baud and command is sent to the Bluetooth module to reconfigure for 115200. Then the serial port is restarted at 115200.
This eliminates the need to pre-configure the Bluetooth module before assembly.
Code has been tested and works great.

Cool feature, great idea! Thanks. Can you confirm it works fine with several modules attached to each other?

and if you dont want to run @ 9600 baud?

I will have to try it with multiple nodes, right now I only have enough parts to build two of them but will eventually be ordering some more. I suspect it could be made to work with multiple nodes by playing around with the timing a little bit. Or possibly just enable the baud rate changing code for the first node and then disable it for the remaining nodes.


Fix a Ruby warnings

Here's a fix for a Ruby warnings.

warning: assigned but unused variable
warning: loading in progress, circular require considered harmful

Thanks.

This build error aren't related to above change. I think that will be solved by PR #22.

👍 once #22 is merged

@bundlerbot r+