Feature Request - INDI support [open]

If you aren't aware of INDI, please check here:
https://www.indilib.org/what-is-indi/features.html
It would make this project camera agnostic if the capture routine were switched to use indi instead of the ASI API.  I realize this is a considerable re-tooling, and I don't have the skills to do it.  But it seems that tons of feature requests are for supporting various camera manufacturers.  This is the whole reason for INDI.

This is the list of INDI camera drivers currently supported:
https://www.indilib.org/individuals/devices/cameras.html
so all these cameras would be directly supported if this were implemented.

Ill let it go, but one more thought.  The system with the camera wouldn't even have to be the system running the allsky software because INDI connects to devices over TCPIP.  Also things like filter wheels could be implemented fairly trivially

While Id love to see INDI support in this project, Unfortunately the INDI driver for Raspberry Pi cameras probably also uses raspistill.  It's possible of course that it does something at a lower level.
Just researched it and it's not clear.  The question could be asked on the indi forums.

I had same idea, will look into it,

Any news about extend the software to INDI?

That would be wonderful, right?
It's not that easy, I have started but could not find enough time. I used
python so far, but finding/implementing a good bayering function for color
cameras is challenging. I have a simple script in my repro - but very basic.
Regards
Joerg
On Thu, 8 Apr 2021 at 17:30, pk825 @.***> wrote:

Any news about extend the software to INDI?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/thomasjacquin/allsky/issues/206#issuecomment-815918025,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACKKCKRMFK3SXGZBLDLQ7CTTHXDXVANCNFSM4O6S2ZBA
.

That would be wonderful, right? It's not that easy, I have started but could not find enough time. I used python so far, but finding/implementing a good bayering function for color cameras is challenging. I have a simple script in my repro - but very basic. Regards Joerg
…
On Thu, 8 Apr 2021 at 17:30, pk825 @.***> wrote: Any news about extend the software to INDI? — You are receiving this because you commented. Reply to this email directly, view it on GitHub <#206 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACKKCKRMFK3SXGZBLDLQ7CTTHXDXVANCNFSM4O6S2ZBA .

Thank you for info. I could use the program with Starlight Oculus and I have only found https://github.com/zemogle/pyOculus. I'll check soon your repo, maybe could help me in order to work with my cam

@thomasjacquin, @ckuethe,
any interest?  Seems like it would be nice but likely a huge change.

Yes, I have interest in this. Aside from ZWO cameras, I also have some QHY, Touptek, and Celestron (v4l2)


Not working with iOS

Hi,
It's not working at all on iOS, however it's working on android with no issues, are you sure it's smooth and funcional on iOS?

Any updates!!

Sorry so late for response.
I just tried in<EMAIL_ADDRESS>on iOS, it works fine.
How is your code? And what error messages are outputted?

See a workable example at https://github.com/cpunion/react-native-actioncable/issues/8


Fervo 400MWe updates [v3.6.3]

Updates per today's sync:

Water loss fraction 2% -> 5%
Plant lifetime 15 years -> 20 years
Exploration capital cost $0M -> $30M
Well drilling/completion cost $4M -> $3.84M
Stimulation cost $78M -> $234M
ITC 0% -> 30%
Surface plant cost adjustment factor 0.78 -> 0.71 to approximate $1900/kW peak production
Lateral length 4700 -> 7500 feet (has no effect on output, accounted for in well capex)

I think we have to put the lateral length back to 4700 (or 5000) ft as the drilling cost currently assumed ($~3.8M/well) and flow rate per well assumed (120 kg/s) are for a 5000 ft long lateral well and not a 7500 ft long lateral well.

@kfbeckers Good catch, reverted back to 4700.


Changed state.getChildren to component variable.

Is it not necessary using state and setting props to state i think (its against react good practises).
What do you think, is it OK?

Yeah, I already changed it back and did a new build. Tried a few things especially regarding some ref issues with Background children that occurred after porting the project to webpack.


react-router-redux 5x : Integration with Immutable.js

Version
react-router-redux 5x
Problem description
I updated react-router-redux so it is compatible with the last version of react-router (4x).
The problem is that syncHistoryWithStore doesn't seem to be supported anymore. I get the following error message:
Uncaught TypeError: (0 , _reactRouterRedux.syncHistoryWithStore) is not a function
I'm Immutable.js to have an immutable state.
Steps to reproduce
Use Immutable.js to have an immutable state.  For the routing reducer, you should have the following code (at least that was the case with react-router-redux 4x):
const history = syncHistoryWithStore(hashHistory, store, {
selectLocationState (state) {
return state.get('routing').toObject()
}
})
Expected Behavior
routing synchronized with the store. Thereore we should be able to perform time traveling using redux dev tool
Actual Behavior
error in the console:
Uncaught TypeError: (0 , _reactRouterRedux.syncHistoryWithStore) is not a function

We changed the API. Please read the readme.

I'm having the same issue and can't really find the part in the readme or in the code where it is possible to get or set an immutable.
@aelmanaa did you solve it?

@timdorr does this mean we no longer need to use syncHistoryWithStore Because the README says nothing regarding these changes and how to deal with them.

@couturecraigj from the source code, I think syncHistoryWithStore is not support yet.

This also seems very unclear to me.
Do we still have to use our own reducer or does the provided one support immutability?

I use 5.0.0-alpha.6 without syncHistoryWithStore.
It feels like new API doesn't require to use store to keep history.
import {
  // immutable
  IMap,

  // redux
  createStore,
  compose,
  applyMiddleware,

  // 'history/createBrowserHistory'
  createBrowserHistory,

  // react-router-redux
  routerMiddleware,

  // redux-thunk
  thunk
} from '../../vendor'

import reducers from '../reducers'

export const history = createBrowserHistory()

const configureStore = (initialState = IMap()) => {
  console.log('store.development')

  if (history) {
    history.listen(location => {
      console.log('location.pathname: ', location.pathname)
    })

    return createStore(
      reducers,
      initialState,
      compose(
        applyMiddleware(routerMiddleware(history), thunk),
        window.devToolsExtension
          ? window.devToolsExtension()
          : fn => fn()
    ))
  }

  return createStore(reducers, initialState)
}

export const store = configureStore()

this is my store.development.js
For anybody wondering what a hell is
import {
...
} '../../vendor'

I have an answer: I import all dependencies in single file vendor.js for code splitting.
If you use code splitting on route level, you can't gain the bundle size reduce in prod build without vendor code splitting.
You can have multiple vendor files, and separate frequently updated packages from not so frequently, you can gain better browser caching experience. Also it is a good practice to separate development dependencies to separate file, so you do not bundle dev deps to production build.

The above comment doesn't help me. I still see there being a lack of explanation of how to deal with the removal of selectLocationState. That seems to be the crucial component that lets redux know about state changes in the context of using an ImmutableJS store. Here's my problem, using Immutable.Map as my store:
In my app, the initial render of any  correctly takes the location into account, but any subsequent use of history.push() or even the push provided by import { push } from 'react-router-redux' only causes the URL to change, but react-router does not notice, and the view does not change.
If I refactor my app to use a plan JS object instead of an Immutable.Map, the routing works perfectly.
There is a missing piece here. How do we specify how react-router can access the necessary state to know what route it's on?

Did you solve this problem?

Anything new with this issue. I'm using redux-immutable and can't get the routing to update along with history. Any solutions created?

Actually using react-router-redux with immutable.js is even simpler with version 5.
syncHistoryWithStore has been deprecated. ConnectedRouter will make sure to keep the store in sync with history. It does this by listening to history, and dispatching LOCATION_CHANGE actions.
In version 5 the store is being accessed in two places only:

routerReducer
createMatchSelector

To get things working the only thing one has to update is the routerReducer:
import {Map}             from 'immutable';
import {LOCATION_CHANGE} from 'react-router-redux';

const initialState = Map({
                             location: null,
                             action:   null
                         });

export function routerReducer(state = initialState, {type, payload = {}} = {}) {
    if (type === LOCATION_CHANGE) {
        const location = payload.location || payload;
        const action   = payload.action;

        return state.set('location', location)
                    .set('action', action);
    }

    return state;
}

You don't have to patch createMatchSelector if you're not using it in your project.


buffer overflow in debugger

Environment

Tesseract Version: 5.0.0-alpha
Commit Number: 14c6e387239a679ac5b58f126ab96e851a5e6624
Platform: x86_64 GNU/Linux

Problem
When I invoke the visual debugger, I always get a buffer overflow (regardless of what I try):
SCROLLVIEW_PATH=$PWD/java tesseract test/testing/eurotext.tif stdout inter
Page 1
Starting sh -c "trap 'kill %1' 0 1 2 ; java -Xms1024m -Xmx2048m -jar ./tesseract/java/ScrollView.jar & wait"
ScrollView: Waiting for server...
Socket started on port 8461
Client connected
=================================================================
==24103==ERROR: AddressSanitizer: global-buffer-overflow on address 0x55f2a72adc14 at pc 0x7f1d31959d02 bp 0x7ffc90d5b930 sp 0x7ffc90d5b0d8
READ of size 1 at 0x55f2a72adc14 thread T0
    #0 0x7f1d31959d01  (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x60d01)
    #1 0x55f2a6f73394 in ParamsEditor::GetFirstWords(char const*, int, char*) ../src/ccmain/paramsd.cpp:107
    #2 0x55f2a6f75878 in ParamsEditor::GetPrefixes(char const*, STRING*, STRING*, STRING*) ../src/ccmain/paramsd.cpp:184
    #3 0x55f2a6f76681 in ParamsEditor::BuildListOfAllLeaves(tesseract::Tesseract*) ../src/ccmain/paramsd.cpp:232
    #4 0x55f2a6f787bf in ParamsEditor::ParamsEditor(tesseract::Tesseract*, ScrollView*) ../src/ccmain/paramsd.cpp:303
    #5 0x55f2a6b54e29 in tesseract::Tesseract::pgeditor_main(int, int, PAGE_RES*) ../src/ccmain/pgedit.cpp:390
    #6 0x55f2a6737187 in tesseract::TessBaseAPI::Recognize(ETEXT_DESC*) ../src/api/baseapi.cpp:885
    #7 0x55f2a673ed8e in tesseract::TessBaseAPI::ProcessPage(Pix*, int, char const*, char const*, int, tesseract::TessResultRenderer*) ../src/api/baseapi.cpp:1266
    #8 0x55f2a673bc53 in tesseract::TessBaseAPI::ProcessPagesMultipageTiff(unsigned char const*, unsigned long, char const*, char const*, int, tesseract::TessResultRenderer*, int) ../src/api/baseapi.cpp:1059
    #9 0x55f2a673dac7 in tesseract::TessBaseAPI::ProcessPagesInternal(char const*, char const*, int, tesseract::TessResultRenderer*) ../src/api/baseapi.cpp:1221
    #10 0x55f2a673bf06 in tesseract::TessBaseAPI::ProcessPages(char const*, char const*, int, tesseract::TessResultRenderer*) ../src/api/baseapi.cpp:1077
    #11 0x55f2a6711dca in main ../src/api/tesseractmain.cpp:780
    #12 0x7f1d2f5c2b96 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x21b96)
    #13 0x55f2a6709039 in _start (/usr/local/bin/tesseract+0x1668039)

0x55f2a72adc14 is located 44 bytes to the left of global variable '*.LC153' defined in '../src/ccmain/pgedit.cpp' (0x55f2a72adc40) of size 19
  '*.LC153' is ascii string 'Editor image Y Pos'
0x55f2a72adc14 is located 2 bytes to the right of global variable '*.LC152' defined in '../src/ccmain/pgedit.cpp' (0x55f2a72adc00) of size 18
  '*.LC152' is ascii string 'editor_image_xpos'
SUMMARY: AddressSanitizer: global-buffer-overflow (/usr/lib/x86_64-linux-gnu/libasan.so.4+0x60d01)
Shadow bytes around the buggy address:
  0x0abed4e4db30: 00 04 f9 f9 f9 f9 f9 f9 00 04 f9 f9 f9 f9 f9 f9
  0x0abed4e4db40: 00 00 00 00 05 f9 f9 f9 f9 f9 f9 f9 00 00 00 00
  0x0abed4e4db50: 01 f9 f9 f9 f9 f9 f9 f9 00 00 00 07 f9 f9 f9 f9
  0x0abed4e4db60: 00 00 00 01 f9 f9 f9 f9 00 00 06 f9 f9 f9 f9 f9
  0x0abed4e4db70: 00 04 f9 f9 f9 f9 f9 f9 00 00 03 f9 f9 f9 f9 f9
=>0x0abed4e4db80: 00 00[02]f9 f9 f9 f9 f9 00 00 03 f9 f9 f9 f9 f9
  0x0abed4e4db90: 00 00 02 f9 f9 f9 f9 f9 00 00 00 00 01 f9 f9 f9
  0x0abed4e4dba0: f9 f9 f9 f9 00 00 00 f9 f9 f9 f9 f9 00 00 00 01
  0x0abed4e4dbb0: f9 f9 f9 f9 00 00 00 03 f9 f9 f9 f9 00 00 00 01
  0x0abed4e4dbc0: f9 f9 f9 f9 00 00 00 03 f9 f9 f9 f9 00 00 04 f9
  0x0abed4e4dbd0: f9 f9 f9 f9 00 00 00 f9 f9 f9 f9 f9 00 00 00 01
Shadow byte legend (one shadow byte represents 8 application bytes):
  Addressable:           00
  Partially addressable: 01 02 03 04 05 06 07
  Heap left redzone:       fa
  Freed heap region:       fd
  Stack left redzone:      f1
  Stack mid redzone:       f2
  Stack right redzone:     f3
  Stack after return:      f5
  Stack use after scope:   f8
  Global redzone:          f9
  Global init order:       f6
  Poisoned by user:        f7
  Container overflow:      fc
  Array cookie:            ac
  Intra object redzone:    bb
  ASan internal:           fe
  Left alloca redzone:     ca
  Right alloca redzone:    cb
==24103==ABORTING
sh: 1: kill: No such process

(I have been using it successfully in the past, but I cannot say when it stopped working.)
Does anyone have a clue? No-one else is having debugger problems?

I should have known better: the address sanitizer is only active when building in debug mode. ViewerDebugging still works when building normally (and using recent enough JRE).
Sorry for the noise!


rhea: more zramSwap, again

Three months ago the zram size config went from 50% to 80%, but now it doesn't seem enough again.

Applied.


Plans for this plugin?

Hello! I'm the author of github.com/twpayne/vscode-testscript. Firstly, thank you for the attribution in README.md :)
It seems to me that this project is an improved version of twpayne/vscode-testscript. What are your plans with this plugin? At the moment, it looks like I should deprecate twpayne/vscode-testscript and redirect users here instead (which is completely fine).

Hello, thank you for the interest in this plugin.
For me, the reasons for implementing vscode-txtar in the first place were

To support highlighting for Cue. Project cue-lang/cue uses txtar to construct their test cases.
To learn the development of VSCode plugin

Currently there is still some distance to a mature, production-ready plugin, such as the lack of unit tests.
The current plan is to add some tests to verify reliability.
For more feature support, as of now, syntax highlighting basically meets daily needs. More feature requirements can wait for others to propose and then implement.
Finally, I do not think it needs to deprecate the original plugin twpayne/vscode-testscript. After all, brody715/vscode-txtar is still considered a less mature plugin.

Thanks for the info :)


add cookies/headers to the RESTClient decorator

I have a lot of tests that use the RESTClient decorator.
Due to some security concerns, now we need to exchange a session cookie.
This cookie must remain the same between requests on some operations.
It would be nice if we can use something like
RESTClient(headers = {header1, header2}) public static MyService myService;
I know it is possible to use the RestClientBuilder, but I do prefer the decorator approach!

hi @a-simoes, thanks for raising this idea. Are the headers you need to add static/final strings? Keep in mind that annotation values must be constants. If you generate the header values at runtime, or even if they have to be created by a function, then they cannot be used in annotation attributes because they are not constant values.

Hi @aguibert . I understand that only static/final strings could be added and not runtime values. That is completely ok. For this particular case, it will work perfectly.

@a-simoes are you still interested in this enhancement? Have you considered using RestAssured to overcome this issue?

nop. I ended up creating a custom REST client.


[libjpeg-turbo] build failure

Operating system
Win10 x64
Compiler
MSVC 2013
Steps to reproduce the behavior
$ ./vcpkg.exe install opencv2 --triplet=x86-windows-v120

Failure logs
$ ./vcpkg.exe install opencv2 --triplet=x86-windows-v120
Computing installation plan...
The following packages will be built and installed:

libjpeg-turbo[core]:x86-windows-v120 -> <IP_ADDRESS>#1
liblzma[core]:x86-windows-v120 -> 5.4.1#1
libpng[core]:x86-windows-v120 -> 1.6.39#1
opencv2[core,default-features,eigen,jpeg,png,tiff]:x86-windows-v120 -> <IP_ADDRESS>#18
tiff[core,jpeg,lzma,zip]:x86-windows-v120 -> 4.5.0#3
zlib[core]:x86-windows-v120 -> 1.2.13
Additional packages (*) will be modified to complete this operation.
Detecting compiler hash for triplet x86-windows-v120...
Restored 0 package(s) from C:\Users\xcy\AppData\Local\vcpkg\archives in 522.8 us. Use --debug to see more details.
Installing 1/6 libjpeg-turbo:x86-windows-v120...
Building libjpeg-turbo[core]:x86-windows-v120...
warning: -- Using community triplet x86-windows-v120. This triplet configuration is not guaranteed to succeed.
-- [COMMUNITY] Loading triplet configuration from: D:\xcy\vcpkg\vcpkg\triplets\community\x86-windows-v120.cmake
-- Using cached libjpeg-turbo-libjpeg-turbo-<IP_ADDRESS>.tar.gz.
-- Cleaning sources at D:/xcy/vcpkg/vcpkg/buildtrees/libjpeg-turbo/src/<IP_ADDRESS>-f411453282.clean. Use --editable to skip cleaning for the packages you specify.
-- Extracting source D:/xcy/vcpkg/vcpkg/downloads/libjpeg-turbo-libjpeg-turbo-<IP_ADDRESS>.tar.gz
-- Applying patch add-options-for-exes-docs-headers.patch
-- Applying patch workaround_cmake_system_processor.patch
-- Using source at D:/xcy/vcpkg/vcpkg/buildtrees/libjpeg-turbo/src/<IP_ADDRESS>-f411453282.clean
-- Configuring x86-windows-v120
-- Building x86-windows-v120-dbg
CMake Error at scripts/cmake/vcpkg_execute_build_process.cmake:134 (message):
Command failed: D:/xcy/vcpkg/vcpkg/downloads/tools/cmake-3.25.1-windows/cmake-3.25.1-windows-i386/bin/cmake.exe --build . --config Debug --target install -- -v -j57
Working Directory: D:/xcy/vcpkg/vcpkg/buildtrees/libjpeg-turbo/x86-windows-v120-dbg
See logs for more information:
D:\xcy\vcpkg\vcpkg\buildtrees\libjpeg-turbo\install-x86-windows-v120-dbg-out.log

Call Stack (most recent call first):
installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_build.cmake:74 (vcpkg_execute_build_process)
installed/x64-windows/share/vcpkg-cmake/vcpkg_cmake_install.cmake:16 (vcpkg_cmake_build)
ports/libjpeg-turbo/portfile.cmake:56 (vcpkg_cmake_install)
scripts/ports.cmake:147 (include)
error: building libjpeg-turbo:x86-windows-v120 failed with: BUILD_FAILED
error: Please ensure you're using the latest port files with git pull and vcpkg update.
Then check for known issues at:
https://github.com/microsoft/vcpkg/issues?q=is%3Aissue+is%3Aopen+in%3Atitle+libjpeg-turbo
You can submit a new issue at:
https://github.com/microsoft/vcpkg/issues/new?template=report-package-build-failure.md&title=[libjpeg-turbo]+Build+error
Include '[libjpeg-turbo] Build error' in your bug report title, the following version information in your bug description, and attach any relevant failure logs from above.
vcpkg-tool version: 2023-03-01-538539c4e364dd6f14f5e36f6704144254845159
vcpkg-scripts version: 638b1588b 2023-06-08 (11 hours ago)
Please use the prefilled template from D:\xcy\vcpkg\vcpkg\installed\vcpkg\issue_body.md when reporting your issue.
Additional context
install-x86-windows-v120-dbg-out.log

This issue hasn’t been updated in 3 month, if it is still an issue, please reopen this issue.


Use new API command LogOut

Tracking issue: https://github.com/Expensify/Expensify/issues/212810
Details

~Holding on https://github.com/Expensify/Web-Expensify/pull/34150~
Fixed Issues
$ https://github.com/Expensify/Expensify/issues/213650
Tests

Checkout branch from https://github.com/Expensify/Web-Expensify/pull/34150 or main if that PR has been merged already
Log out of any account that's currently logged in
Check the number of logins in your logins table with select COUNT(*) from logins where accountID = <account-ID>;
Log in with that account you're checking
Check the number of logins, verify it's one more than what you saw in step 3
Log out of your account
Check the number of logins, verify it's back to what you saw in step 3

[x] Verify that no errors appear in the JS console

PR Review Checklist

Contributor (PR Author) Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I included screenshots or videos for tests on all platforms
[ ] I ran the tests on all platforms & verified they passed on:

[ ] iOS / native
[x] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[x] MacOS / Chrome
[ ] MacOS / Desktop

[x] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is

[x] If a new CSS style is added I verified that:

[ ] A similar style doesn’t already exist
[ ] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

PR Reviewer Checklist

[ ] I verified the correct issue is linked in the ### Fixed Issues section above
[ ] I verified testing steps are clear and they cover the changes made in this PR

[ ] I verified the steps for local testing are in the Tests section
[ ] I verified the steps for Staging and/or Production testing are in the QA steps section
[ ] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[ ] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[ ] I checked that screenshots or videos are included for tests on all platforms
[ ] I verified tests pass on all platforms & I tested again on:

[ ] iOS / native
[ ] Android / native
[ ] iOS / Safari
[ ] Android / Chrome
[ ] MacOS / Chrome
[ ] MacOS / Desktop

[ ] I verified there are no console errors (if there’s a console error not related to the PR, report it or open an issue for it to be fixed)
[ ] I verified proper code patterns were followed (see Reviewing the code)

[ ] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[ ] I verified that comments were added to code that is not self explanatory
[ ] I verified that any new or modified comments were clear, correct English, and explained “why” the code was doing something instead of only explaining “what” the code was doing.
[ ] I verified any copy / text shown in the product was added in all src/languages/* files
[ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy.
[ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named “index.js”. All platform-specific files are named for the platform the code supports as outlined in the README.
[ ] I verified the JSDocs style guidelines (in STYLE.md) were followed

[ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[ ] I verified that this PR follows the guidelines as stated in the Review Guidelines
[ ] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[ ] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[ ] If a new component is created I verified that:

[ ] A similar component doesn't exist in the codebase
[ ] All props are defined accurately and each prop has a /** comment above it */
[ ] Any functional components have the displayName property
[ ] The file is named correctly
[ ] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[ ] The only data being stored in the state is data necessary for rendering and nothing else
[ ] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[ ] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[ ] All JSX used for rendering exists in the render method
[ ] The component has the minimum amount of code necessary for its purpose and it is broken down into smaller components in order to separate concerns and functions

[ ] If a new CSS style is added I verified that:

[ ] A similar style doesn’t already exist
[ ] The style can’t be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)

[ ] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[ ] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.

QA Steps
I believe you'll need ring1 to access login table, unless ring3 has access 😅

Log out of any account that's currently logged in
Check the number of logins in your logins table with select COUNT(*) from logins where accountID = <account-ID>;
Log in with that account you're checking
Check the number of logins, verify it's one more than what you saw in step 3
Log out of your account
Check the number of logins, verify it's back to what you saw in step 3

[ ] Verify that no errors appear in the JS console

Screenshots

Web

Mobile Web

Desktop

iOS

Android

https://user-images.githubusercontent.com/3885503/176445856-9fc2e908-760e-4f06-b0bc-d64019f9fcaa.mov

No longer on hold!

Uhhh I guess the Control + Comment shortcut is now "Closing" the PR / Issue - I didn't mean to close this!

Hmm good question I'll see if I can figure out who knows the most about that :D

Good point @techievivek I think it's better to keep clearing the timer at the bottom, after the API call. updated

Dunno how I got so many merge commits 🤫 but should be ready for another review now haha

Related Web-E PR is on Production since yesterday 👍 Oh just noticed the latest tests haven't finished or something??

🚀 Deployed to staging by @Beamanator in version: 1.1.82-5 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

Used User.getLoginList() in OldDot to check the number of logins for myself (had to hard refresh between logins & logouts) and pass! 👍
After logging in in NewDot:

After logging out of NewDot:


[Readability Issue] Using all vs. wildcards

I have noticed that a lot of __init__.py files in the repo include
# pylint: disable=wildcard-import
from <...> import *
# pylint: enable=wildcard-import

I believe a more appropriate approach would be to use __all__. According to PEP 8 documentation:

To better support introspection, modules should explicitly declare the names in their public API using the all attribute. Setting all to an empty list indicates that the module has no public API.

@drpngx is in the process of sealing our public interface via __all__ and some other mechanisms.

Actually, there is another problem, and I am not sure if I should open a new issue (in case the introduction of __all__ fixes it) -- it is a little more severe:
A lot of files disable pylint messages, but don't enable them in the end -- this potentially might cause a missed warning if several files are imported, because # pylint disable is a global disable.
Here are all the files that modify the pylint
Here is an example file that doesn't revert the modifications

Probably a separate issue for that one.
If you want to try to help contribute fixes for those, that would be awesome.

Yes, it's a long story :-)
We are using all, but this has issues, too. So we're starting to roll out remove_undocumented.
Here's how it works in a nutshell:

__all__ only works one level down
remove_undocumented actually deletes symbols
Splitting between interface and implementation

So, for instance, in tensorflow/python/__init_.py, we do
from ...standard_ops import *
from ...platform import app

The __all__ in standard_ops works to filter out anything that comes using the *. But app doesn't, so you still have tf.app.print_function and a whole slew of other things.
We're rolling out these changes. Stay tuned.

@zafartahirov nice find, please send a PR fixing the missing ones

Yeah, I would love to contribute to the fixes, but I have a paper due the end of the month -- will try to do it over the weekend, no promises though 😄 . If this issue is still open by Saturday, I will send a PR for the current issue as well as #5309

To be clear, I think we have a solution for the __all__, but feel free to send a PR for just one file if you have ideas and we can take it from there.

I was trying to see how this issue might get resolved without hurting the maintainability and without breaking the package integrity, and nothing comes to mind -- sorry, have nothing to contribute in here.
I think I have found the two solutions that are being "tried" in the current master, I am not sure which one you guys are inclined to use:

make_all
resolution in the tensorflow/python/__init__.py

Personally I would just make sure the files that are not supposed to be imported start with _ to indicate the protection, and use glob.glob('./[a-zA-Z]*.py') to get all the public files. After small preprocessing the paths could be converted to the import strings. Protected _ and private __ files would be a special case, and would have to be imported/included manually.
The problem with this approach it is non-standard and requires a lot of rewriting. What is the current standard at TF for in-package imports?

Thanks for looking into this!
We want to retain some of the ease and flexibility that we have, while disallowing accidental imports.
Here's what we do:

We document symbols that we should use, with @@foo
We use remove_undocumented to delete all symbols from "selected" modules/packages
We have a whitelist

"Selected" modules/packages are those that are imported into the tf namespace, for instance: app, image, nn, etc., transitively on down. For instance, tf.app.flags.
These packages have a choice of (first one chosen to be the predominant solution):

Have no implementation, just from .. import *, or from .. import Foo. They typically have a counterpart, called _impl, for instance, gradients_impl.py
Have implementation, but use underscore for all packages used solely for implementation as you suggest

Here is an example module using the first variant, dubbed dual API/implementation:
gradients.py: (API module)
"""Gradients doc
@@some_func
"""
from .. import remove_undocumented
from ..gradients_impl import *
remove_undocumented(__name__, ["some_other_func"])

gradients_impl.py: (implementation module)

import some_module
from ... import some_useful_module

def some_func(): pass
def some_other_func(): pass
# No remove_undocumented.

foo.py: (internal implementation module which requires some functions defined in gradients_impl. We make sure that foo.py is never imported in the tf namespace, directly or transitively:

from tensorflow...import gradients_impl

def foo(x):
   return gradients_impl.my_internally_useful_function(x + 1)

There are no import * in gradients_impl.
Here's an example module using the second variant (dubbed the fused api/implementation).
logging.py:
"""Logging things
@@print_stderr
"""
import sys as _sys

def print_stderr(msg):
   _sys.stderr.write(msg)

remove_undocumented(__name__, [])

To recap, (after the change is fully complete)

As a tensorflow user, (minus a handful of exceptions such as tfdbg), you are only allowed to use import tensorflow as tf
As a tensorflow developer, you are encouraged to use from tensorflow... import ... in your modules
As a tensorflow developer, you are not allowed to use import * in your implementation modules, only in API modules
So, more or less our internal code remains the same, except that we have to be careful in a handful of modules (perhaps 20 or so)
As a tensorflow user, you no longer have access to internal modules that have not been explicitly exported via a whitelist or a documentation reference.

HTH

Thank you very much for a detailed explanation. Is this information anywhere in the documentation?

No, we don't have design docs out there. It might be good to have somewhere close to the style guide, though. Ultimately, if you mimic our code, then it should work; if you don't, then we should be able to catch that automatically, at some point.

I think we can close this issue due to a) No new comments in the past 2+ months b) This is not really an issue, and the documentation is work in progress.


Managing legacy deployments / Initial import: AWS Console -> IaSQL

The value proposition in the wording for this product can be good inspiration https://www.autocloud.io/


API Documentation

Could you write a little bit about the API in documentation?
Which IP-Ports are in use?
Something about the json requests and responses?

Hi,
Thanks for the suggestions, I will do that when I get the chance. At the moment, I am currently swamped with other work.


File names case

https://github.com/Spuds/Elk_BBC_FontA/blob/master/FaButton.subs.php#L30
The files are loaded as "faButton.", but the files are actually named "FaButton.", so picky *nix doesn't fine them. :angel:

Darn !


dependOn in module.exports[entry] breaks webpack

Bug report

What is the current behavior?
using dependOn in module.exports[entry] breaks webpack, same as the title
If the current behavior is a bug, please provide the steps to reproduce.
this repository reproduces the problem: repo (this is a django project that uses react and webpack to manage js assets)
try running yarn watch
here's the output i got:
$ yarn watch
yarn run v1.22.4
$ webpack --watch --config webpack.config.watch.js --mode development

webpack is watching the files…

TypeError: requestWithoutMatchResource.startsWith is not a function
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/NormalModuleFactory.js:180:57
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/NormalModuleFactory.js:129:4
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/NormalModuleFactory.js:400:5
    at AsyncSeriesWaterfallHook.eval [as callAsync] (eval at create (/home/armor/programming/python/dorebazar/node_modules/tapable/lib/HookCodeFactory.js:33:10), <anonymous>:4:1)
    at NormalModuleFactory.create (/home/armor/programming/python/dorebazar/node_modules/webpack/lib/NormalModuleFactory.js:381:28)
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/Compilation.js:1063:18
    at Semaphore.acquire (/home/armor/programming/python/dorebazar/node_modules/webpack/lib/util/Semaphore.js:29:4)
    at Compilation._addModuleChain (/home/armor/programming/python/dorebazar/node_modules/webpack/lib/Compilation.js:1062:18)
    at Compilation.addEntry (/home/armor/programming/python/dorebazar/node_modules/webpack/lib/Compilation.js:1164:8)
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/DynamicEntryPlugin.js:59:19
    at new Promise (<anonymous>)
    at addEntry (/home/armor/programming/python/dorebazar/node_modules/webpack/lib/DynamicEntryPlugin.js:58:13)
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/DynamicEntryPlugin.js:72:16
    at Array.map (<anonymous>)
    at /home/armor/programming/python/dorebazar/node_modules/webpack/lib/DynamicEntryPlugin.js:71:27
    at processTicksAndRejections (internal/process/task_queues.js:97:5)
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.

What is the expected behavior?
as stated here the code should work.

Other relevant information:
webpack version:  4.43.0
Node.js version: 12.17.0
Operating System: Arch Linux x86_64
Additional tools: bash?

looks like webpack/lib/NormalModuleFactory.js at line 180 expects a string but requestWithoutMatchResource is an object.

Thanks for the issue, bug

@evilebottnawi this is webpack v4

dependOn is a webpack 5 feature. It doesn't work in webpack 4.


make GitHub show develop branch by default

As pointed in #748, it is not clear when looking at https://github.com/hyperledger/burrow that the code is under active development.
The solution is to change GitHub default shown branch to develop

master should be the default branch, we have since released here

Actually you were right about this, although master is our release branch, it will be better to have PRs default to develop. Ideally I would really like the home branch you see on first visit to still be master, but PRs to go to develop. I can't have it both ways so I've switched to develop.


Feature Request: Total numbers of Tags

Option to add a limit to the tags. Currently, I am not able to set any limit to the tags.

Hi @RajkiranShetty this already exists although the option is not on the docs for some reason. I'll add that, but the option key is maxTags. https://github.com/okcoker/taggle.js/blob/e3bb0ed27d019390c4d04caace3aa0e9f5397cb7/src/taggle.js#L138-L142

Thank you


Remote write stop sending samples

What did you do?
I use a prometheus to collect metrics, and write to an OpenTSDB remote storage.
Then all the prometheus remote metrics stoped to grow.
It looks like #10264 , but I am very sure the patch is merged.
I got the stack goroutine.txt
What did you expect to see?
No response
What did you see instead? Under which circumstances?
Logs like "Skipping resharding, last successful send was beyond threshold" repeated for a while, then no more remote write logs.
Prometheus remote write metrics stoped growing, apparently it's blocked somewhere.
System information
Linux 5.4.143.bsk.3-amd64 x86_64
Prometheus version
Version	2.33.5
Revision	abe39ffbb022aed5606e15fd46d9541c822e354f
Branch	bytedance-dev
BuildUser	root@leafboat-73428968
BuildDate	20220609-13:02:08
GoVersion	go1.17.8

Prometheus configuration file
global:
  scrape_interval: 30s
  scrape_timeout: 10s
  evaluation_interval: 30s
  external_labels:
    cluster: erica
    collector: ksm-collector-1
    physical_cluster: erica-hl
    vdc: hl
remote_write:
- url: http://telecaster.byted.org/api/prometheus/align
  remote_timeout: 30s
  write_relabel_configs:
  - source_labels: [metric_prefix, __name__]
    separator: ;
    regex: (.+);(.+)
    target_label: __name__
    replacement: $1.$2
    action: replace
  - separator: ;
    regex: (metric_prefix|bke_prometheus_stack_scrape)
    replacement: $1
    action: labeldrop
  follow_redirects: true
  queue_config:
    capacity: 2500
    max_shards: 200
    min_shards: 1
    max_samples_per_send: 500
    batch_send_deadline: 5s
    min_backoff: 30ms
    max_backoff: 5s
  metadata_config:
    send: true
    send_interval: 1m
    max_samples_per_send: 500

Alertmanager version
No response
Alertmanager configuration file
No response
Logs
ts=2022-12-19T10:20:30.668Z caller=dedupe.go:112 component=remote level=warn remote_name=f9aa52 url=http://telecaster.byted.org/api/prometheus/align msg="Skipping resharding, last successful send was beyond threshold" lastSendTimestamp=1671414921 minSendTimestamp=1671445220

Hello from the bug scrub.
Apologies for the delay in looking into this.
@alexgreenbank to investigate.


Compatibility with the Raiden protocol

Description
The LC SDK depends upon the Raiden protocol implemented within the

Raiden Client
Pathfinding Service
Matrix
Raiden contracts

We need to find a way how to stay compatible, deal with breaking changes and align with the core team on how to prepare those changes and minimize their impact.
Related Issues

https://github.com/raiden-network/raiden/issues/5396
https://github.com/raiden-network/light-client/issues/348

Tasks

[ ]

There is now a PR for raiden-network/raiden#5396, but it will not help you with this. There will only be encoding/decoding roundtrip tests, no tests that the format does not change. (We don't want this in Raiden at the moment, as backwards compatibility is not ensured yet and thus the formats may change without consequences for development.)

@jomuel Cool, thanks a lot 👍
Let's continue the discussion next year ;)
CC @Dominik1999 @hackaugusto

We have an issue for discussing on how to align on this #2753.


Backport: Send RST_STREAM from client when it receives trailing metadata without the corresponding RST_STREAM

Backports #8598 to v1.0.x and add Objective-C tests
cc: @makdharma @hsaliak

Ping~

test this please


Migration Incidence Participant Verification

Verify Helper/StudyTracker/match/etc status of participants who were impacted by March migration event.

JH will check with Queenie/DRC about what this is


ADAFRUIT METRO M4 EXPRESS AIRLIFT (WIFI) - LITE problems

Hi,
Having issues with metro m4 airlift. I have tried w5100 and w5500 and ethernet, ethernet2, ethernet3 libraries and I always get <IP_ADDRESS>
Starting WebServer on SAMD51 ADAFRUIT_METRO_M4_AIRLIFT_LITE with W5x00 using Ethernet Library
[ETHERNET_WEBSERVER] =========== USE_ETHERNET ===========
[ETHERNET_WEBSERVER] Default SPI pinout:
[ETHERNET_WEBSERVER] MOSI: 26
[ETHERNET_WEBSERVER] MISO: 24
[ETHERNET_WEBSERVER] SCK: 25
[ETHERNET_WEBSERVER] SS: 36
[ETHERNET_WEBSERVER] =========================
[ETHERNET_WEBSERVER] Board : SAMD51 ADAFRUIT_METRO_M4_AIRLIFT_LITE , setCsPin: 10
Currently Used SPI pinout:
MOSI:26
MISO:24
SCK:25
SS:36
Using mac index = 3
EthernetWebServer started @ IP address: <IP_ADDRESS>

That happens when the M4 board couldn't communicate to the W5x00 via SPI bus, then couldn't initialize the W5x00. You must have the wiring connected not correctly.
There are something you need to check

Did you modify the Ethernet libraries according to Libraries' Patches?
Did you check, recheck and verify the pins and connection from the W5x00 to Metro M4 Airlift? Please be sure you have connected to the SPI ICSP header on the right side of the board (MOSI/MISO/SCK) and pin 10 for CS for W5x00.

If you still have issue, it's easier for you to use the W5100 shield with ICSP connector + Ethernet/EthernetLarge Library


create holdings notes for records that don't get folio item records

For the symphony items that don't get folio items, we need to add holdings notes from the tsv file: ckeys_$ckeyrange.holdingsnote.tsv. It will have this type of data in it:
CATKEY|CALL SEQ|COPY|XINFO NOTE TYPE|XINFO NOTE|. See https://github.com/sul-dlss/FOLIO-Project-Stanford/issues/471 for background.

Columns in the holdingsnote file will be "CATKEY	CALL_SEQ	COPY	XINFO_NOTE_TYPE	NOTE"

Ok, there are now some test sample files in the Bibs_catdumps directory:
sirsi@bodoni /s/SUL/Dataload/folio_symphony_extract/Bibs/Bibs_catdumps> head ckeys_00000000_00049999.holdingsnote.tsv
CATKEY	CALL_SEQ	COPY	XINFO_NOTE_TYPE	NOTE
7860	3	1	TECHSTAFF	i:syc, 6/15/10
8119	4	1	TECHSTAFF	bw, i:rmr 3/12/2013
8119	4	1	TECHSTAFF	tf:SAL 06/06/13 batch
8216	3	1	TECHSTAFF	EDI receipt; i:aaz,8/22/2007; i:syc, 6/21/10
8398	4	1	TECHSTAFF	i:kmm,7/27/2007
8398	4	1	TECHSTAFF	tf:SAL 12/17/12 batch; rf:043 .S18:cam, 5/8/14
8398	4	1	TECHSTAFF	tf:GREEN 05/15/14 batch
8545	5	1	TECHSTAFF	i:jkc,03/26/10
8571	2	1	TECHSTAFF	i:rmr, 7/14/2009; i:syc, 6/21/10

It doesn't have any data from the BASECALNUM items but for the internet and bwchild it does.

Should i change the column name to "NOTE_TYPE" instead of "XINFO_NOTE_TYPE"?


[release-v3.28] Auto pick #8707: Reduce indent in fv/bpf_dual_stack_test.go

Cherry pick of #8707 on release-v3.28.
#8707: Reduce indent in fv/bpf_dual_stack_test.go
Original PR Body below
Description
[BPF] When IPv6 is enabled, either v4 or v6 connectivity is enough

If IPv6 is enabled (which enables dual stack), it is ok, if only ipv6
addresses are avilable. Felix reports ready and connectivity exists.
When IPv4 are assigned later, IPv4 connectivity will work. The same hold
in reverse order.

worded differently, Felix reports ready if the path for whatever ip
version of its host IPs is ready. If there is a vX host IP and version
X path is not loaded, Felix is not ready as there is an error.

Related issues/PRs

Todos

[ ] Tests
[ ] Documentation
[ ] Release note

Release Note

TBD

Reminder for the reviewer
Make sure that this PR has the correct labels and milestone set.
Every PR needs one docs-* label.

docs-pr-required: This change requires a change to the documentation that has not been completed yet.
docs-completed: This change has all necessary documentation completed.
docs-not-required: This change has no user-facing impact and requires no docs.

Every PR needs one release-note-* label.

release-note-required: This PR has user-facing changes. Most PRs should have this label.
release-note-not-required: This PR has no user-facing changes.

Other optional labels:

cherry-pick-candidate: This PR should be cherry-picked to an earlier release. For bug fixes only.
needs-operator-pr: This PR is related to install and requires a corresponding change to the operator.

/merge-when-ready

OK, I will merge the pull request when it's ready, leave the commits as is when I merge it, and leave the branch after I've merged it.


Update vulnerable axios version in @segment/analytics-node

Axios >= 0.8.1, < 1.6.0 contains security vulnerability according to https://github.com/advisories/GHSA-wf5p-g6vw-rhxx

Thank you. This is a dev dependency that we only use for the Typescript types, but we will update when we get a chance.


php 8.3 deprecation

Hello, I just started experimenting with your package and it looks great so far.
$ php demo.php show:time
PHP Deprecated:  Using ${var} in strings is deprecated, use {$var} instead in ...\vendor\swew\cli\src\Command\CommandArgument.php on line 196

https://github.com/swew-app/cli/blob/f01b44b6b3458e1661b4add5b31c93654ed4b60f/src/Command/CommandArgument.php#L191-L200

Thank you.


ziti enroll fails to add CA bundle when using a publicly trusted PKI

if the controller uses a cert issued by a CA trusted by the OS, the CA bundle from the controller is not fetched which produces an identity with no ca entry.
This usually causes problems with edge clients connecting to the data plane, as the certificate presented by the routers is usually from the private PKI.
If no ca entry exists in the identity file, the trust root cannot be established and the client won't successfully connect to routers.
Change the ziti CLI to always pull and include the ca bundle during the enrollment process.

Agree that enrollment should always fetch the well known bundle and insert in id.ca as long as edge SDKs fall back to verifying server certs with the OS trust store when the bundle doesn't contain the issuer's CA cert. That doesn't appear to be universally the case at this time, however. Rather, the C-SDK, at least, will fail to verify the server cert when id.ca is present in the identity context and the issuer's CA cert isn't in the bundle, as is the case for a server certificate issued by a public authority like Let's Encrypt.
In summary, today it is presumed that all routers' TLS and WS bindings and the controller's edge-client API present only server certificates that can be verified by the OS trust store and that id.ca must not be present in the context i.e. if any one of those server certificates is publicly verifiable then they must all be publicly verifiable.
ziti-edge-tunnel enroll deviates from this pattern by always inserting id.ca, even when it's unnecessary, thereby preventing the identity from verifying server certificates from a public CA. I tested this by pruning the id.ca property from the config and confirming the tunneler functions normally thereafter.

Based on your testing, the C-SDK tries the CA bundle from the identity and then the OS bundle.
The GO SDK tries the identity bundle and then gives up.
I don't know what the SDKs that don't use the C-SDK do (i.e. JVM).
It seems like to support public CAs we have to adopt the fall back pattern.

In that case, SDKs could refresh their embedded CA bundle by fetching the latest if verification fails.

Yes, I agree. The well-known CA store should be hit again in that scenario.

In that case, SDKs could refresh their embedded CA bundle by fetching the latest if verification fails.

Yes, I agree. The well-known CA store should be hit again in that scenario.

the problem is if your CA bundle is expired SDK would fetch CA bundle from untrusted source

the problem is if your CA bundle is expired SDK would fetch CA bundle from untrusted source

Won't help in that scenario but it will help if the controller has been reconfigured with a new CA bundle. Expiration is an entirely different problem.

the problem is if your CA bundle is expired SDK would fetch CA bundle from untrusted source

Won't help in that scenario but it will help if the controller has been reconfigured with a new CA bundle. Expiration is an entirely different problem.

isn't it the problem though? if controller has new CA bundle --> has cert issues with new bundle --> SDK with old bundle cannot validate it and download new bundle

Relatedly, Go SDK PR to change enroll behavior to always fetch Ziti trust bundle.

For reference, a writeup about how to align alt server certs and SDK configs: https://openziti.github.io/guides/alt-server-certs

the problem is if your CA bundle is expired SDK would fetch CA bundle from untrusted source

Won't help in that scenario but it will help if the controller has been reconfigured with a new CA bundle. Expiration is an entirely different problem.

isn't it the same problem though? if controller has new CA bundle --> has cert issued with new bundle --> SDK with old bundle cannot validate it and download new bundle

I don't think so. An external CA could be added (i.e. through 3rd Party CAs or static configuration). If the controller's non-alternate-server-cert is being changed to a different CA that would require 1) the controller to publish the new CA to trust first 2) the SDKs would have to support refreshing the CA bundle lastly 3) once all/enough SDKs trust the new CA the server cert can be changed.

superseded by future trust bundle work


[6.0] Fix warning in OSSignpost.swift w/ @preconcurrency import

Cherry-pick of #7785.
rdar://131432130
Explanation:
Scope:
Risk:
Testing:
Issue:
Reviewer:

@swift-ci test


librespot and firewall ports

My laptop/mobile phone and my raspberrypi are connected to separate subnets.
After starting librespot I can see that the entries are published via mdns
user@host:~$ avahi-browse --all --resolve
+ wlp3s0 IPv6 raspberrypi                                   _spotify-connect._tcp local
+ wlp3s0 IPv4 raspberrypi                                   _spotify-connect._tcp local
= wlp3s0 IPv4 raspberrypi                                   _spotify-connect._tcp local
   hostname = [raspberrypi.local]
   address = [XXX.XXX.XXX.XXX]
   port = [38143]
   txt = ["CPath=/" "VERSION=1.0"]

If I try to connect from my laptop to XXX.XXX.XXX.XXX:38143 I get a 404, and in the console where librespot is running I can see the message
DEBUG:librespot::authentication::discovery: Get "/" {}

When I start Spotify, I can't see the librespot device name in the list of available Spotify Connect devices.
The firewall rules allow hosts in the LAN to connect to every tcp/udp port of all the devices in the network with the raspberrypi, but not the other way around. Is there any communication happening from librespot to the spotify app that requires ports to be opened?

(Just to confirm, does non-discovery authentication work ?)
The 404 is normal, does http://XXX.XXX.XXX.XXX:38143/?action=getInfo work ?
Here's my educated guess at the issue.
Discovery uses mDNS, which normally relies on multicast UDP on port 5353.
However Spotify has it's own implementation which uses unicast instead (if a Spotify engineer reads this, fyi this goes against the RFC)
Your router is probably letting multicast through but not unicast, which explains why avahi-browse works.
I don't think the client uses a fixed UDP port to receive packets, though you could fire up wireshark to check.
Does your firewall let you filter packets by source IP/port ?
Port 5353 from the Pi is where the packets come from.
Let me know if this helps !

Do you have access to an iOS device? I think Spotify uses Apple's implementation of mDNS on there, which appropriately uses multicast. If it works it would confirm my suspicions.

Non-discovery auth: not tested, will give it a try.
The 404 doesn't bother me that much, was just a way to confirm that librespotify is receiving and responding to packets coming from the LAN, and it does.
The firewall allows all UDP packets with destination port 5353 to flow in both directions. I don't have an iOS device to verify, will try to get my hands on one of them in the next days.
Keep in mind that, using separate subnets, the firewall has avahi-daemon working as reflector.
I'll run some more tests to try to pinpoint the issue. In the meantime I just moved the raspberrypi to the LAN and everything works fine - thanks for this amazing piece of software :)


DestinationsNavTypeSerializer in a different module?

Hi there,
I have some classes in module 1 and I would like to use them in module 2 as nav arguments.
I have custom type serializers for those classes in module 1 but found that module 2 is not picking the serializers up and are using the default serializer. Is there any setting I can use to make this work?

Hi 👋
At the moment, NavTypeSerializers need to be defined in the same module that is generating your Destinations that use those classes as nav arguments.

Hi @raamcosta , sorry for the late reply.
Is it possible to request this feature? My use case is that I want to define argument types inside one module A, and then in both module B and C I would have destinations that ref to some argument types I defined in A.
Right now, I cannot do this because how destinations generate routes based on the argument serializers.
My project also uses the kotlinx serialization library and notice they have something like @Serializable(with=MySerializer:class) that I can add to the class, and then during serialization it will use the correct serializer.
I wonder if it is possible to provide such kind of features?
E.g. adding one more annotation like
@NavigationSerializer(with=MyArgSerializer:class)
class MyArg(...)

and then inside my nav args my arg will be always serialized with MyArgSerializer?
or.... is it possible to have it refer to the one in kotlinx serializable somehow?


If launching rerun with a blueprint from the command-line there's no way to send data to the app

We don't appear to start the TCPServer if we pass a local file to rerun on start.
Although we've always had this issue when loading .rrd files from the CLI, the fact that Blueprint files and RRD files combine makes this particularly annoying.
Consider the following workflow:
I've saved a blueprint.
Now I want to run:
rerun my_app.rbl

to restore it (related issue: https://github.com/rerun-io/rerun/issues/5694)
However, because there is no TCPServer running, I can't run an app that connects to it.

On a related note, I've wanted to be able to use the CLI as a data forwarder tool for a long time, e.g.: rerun my_data.rrd --connect (or, in this instance, rerun my_blueprint.rbl --connect):

https://github.com/rerun-io/rerun/issues/2044

The easy solution is to always spawn a TCP server when we launch the rerun binary (unless --no-server or whatever)


Removing a refinement causes verification to fail

In /examples/data_structures/BinarySearchTree.fst, we have the following function, representing the typical binary search tree insertion operation.
val insert : x:int -> t:tree{is_bst t} ->
  Tot (r:tree{is_bst r /\ (forall y. in_tree y r <==> (in_tree y t \/ x = y))})
let rec insert x t =
  match t with
  | Leaf -> Node x Leaf Leaf
  | Node n t1 t2 -> if x = n then      t
                    else if x < n then Node n (insert x t1) t2
                    else               Node n t1 (insert x t2)

Removing the second condition from the return value causes the verification to fail.
val insert : x:int -> t:tree{is_bst t} -> Tot (r:tree{is_bst r})
The error message is Subtyping check failed; expected type (r#18535:BinarySearchTree.tree{(Prims.b2t (BinarySearchTree.is_bst r@0))}); got type BinarySearchTree.tree.
Why does this happen?

It's because that's probably a crucial part of the invariant required to prove this recursive function correct. The specification of a recursive function is akin to an the inductive hypothesis of a proof by induction, and as you probably know too well, the hardest part of interesting inductive proofs is finding a strong enough inductive hypothesis. So apparently removing that conjunct leaves you not only with less to prove, but also leaves you with a too weak inductive hypothesis to be able to prove what's left.


Remove Unncessary Unsafe and Endian-Dependent Codepaths

Issue
Float::from_bits is implemented as mem::transmute, and therefore does exactly what we need in all cases.
Solution
We don't need an endian-dependent code-path: we can just use the mask 0xFFFFFFFF to ensure it works, which will grab the least-significant 32 bits, and then create a float directly from those bits.
pub unsafe fn to_float_v1(word: u64) -> f32 {
    if cfg!(target_endian = "big") {
        *(&word as *const _ as *const f32).add(1)
    } else {
        *(&word as *const _ as *const f32)
    }
}

pub fn to_float_v2(word: u64) -> f32 {
    f32::from_bits((word & 0xFFFFFFFF) as u32)
}

example::to_float_v1:
        movd    xmm0, edi
        ret

example::to_float_v2:
        movd    xmm0, edi
        ret

The full implementation therefore could be:
diff --git a/src/parse.rs b/src/parse.rs
index 5571da7..9c592d4 100644
--- a/src/parse.rs
+++ b/src/parse.rs
@@ -1,5 +1,3 @@
-use core::mem;
-
 use crate::binary::compute_float;
 use crate::float::Float;
 use crate::number::{parse_inf_nan, parse_number};
@@ -32,13 +30,5 @@ pub fn parse_float<F: Float>(s: &[u8]) -> Option<(F, usize)> {
     if num.negative {
         word |= 1_u64 << F::SIGN_INDEX;
     }
-    let value = unsafe {
-        if cfg!(target_endian = "big") && mem::size_of::<F>() == 4 {
-            *(&word as *const _ as *const F).add(1)
-        } else {
-            *(&word as *const _ as *const F)
-        }
-    };
-
-    Some((value, rest))
+    Some((F::from_u64_bits(word), rest))
 }
diff --git a/src/float.rs b/src/float.rs
index 39bec41..a976408 100644
--- a/src/float.rs
+++ b/src/float.rs
@@ -40,6 +40,7 @@ pub trait Float:
     const MAX_MANTISSA_FAST_PATH: u64 = 2_u64 << Self::MANTISSA_EXPLICIT_BITS;

     fn from_u64(v: u64) -> Self;
+    fn from_u64_bits(v: u64) -> Self;
     fn pow10_fast_path(exponent: usize) -> Self;
 }

@@ -67,6 +68,11 @@ impl Float for f32 {
         v as _
     }

+    #[inline]
+    fn from_u64_bits(v: u64) -> Self {
+        f32::from_bits((v & 0xFFFFFFFF) as u32)
+    }
+
     #[inline]
     fn pow10_fast_path(exponent: usize) -> Self {
         #[allow(clippy::use_self)]
@@ -101,6 +107,11 @@ impl Float for f64 {
         v as _
     }

+    #[inline]
+    fn from_u64_bits(v: u64) -> Self {
+        f64::from_bits(v)
+    }
+
     #[inline]
     fn pow10_fast_path(exponent: usize) -> Self {
         #[allow(clippy::use_self)]

This was tested on both little-endian and big-endian platforms using the following cross targets:

powerpc-unknown-linux-gnu
x86_64-unknown-linux-gnu

Using the following command, we can see the assembly generated for a few architectures for both functions:
Command
cross rustc --target $target --release -- --emit asm

Functions
#[no_mangle]
pub unsafe fn to_float_v1(word: u64) -> f32 {
    if cfg!(target_endian = "big") {
        *(&word as *const _ as *const f32).add(1)
    } else {
        *(&word as *const _ as *const f32)
    }
}

#[no_mangle]
pub unsafe fn to_float_v2(word: u64) -> f32 {
    f32::from_bits((word & 0xFFFFFFFF) as u32)
}

Assembly
i686-unknown-linux-gnu
to_float_v1:
	.cfi_startproc
	flds	4(%esp)
	retl

.set to_float_v2, to_float_v1

x86_64-unknown-linux-gnu
to_float_v1:
	.cfi_startproc
	movd	%edi, %xmm0
	retq

.set to_float_v2, to_float_v1

powerpc-unknown-linux-gnu
to_float_v1:
.Lfunc_begin5:
	.cfi_startproc
	stwu 1, -16(1)
	.cfi_def_cfa_offset 16
	stw 4, 12(1)
	lfs 1, 12(1)
	addi 1, 1, 16
	blr

.set to_float_v2, to_float_v1

mips64-unknown-linux-gnuabi64
to_float_v1:
	.cfi_startproc
	.frame	$sp,0,$ra
	.mask 	0x00000000,0
	.fmask	0x00000000,0
	.set	noreorder
	.set	nomacro
	.set	noat
	sll	$1, $4, 0
	jr	$ra
	mtc1	$1, $f0
	.set	at
	.set	macro
	.set	reorder
	.end	to_float_v1

.set to_float_v2, to_float_v1

In short, the ASM is identical in every case.

Looks great, thanks for the detailed analysis.
Perhaps we should have at least one BE target to run the tests on CI?

I can add in a few targets. lexical-core tests on a lot of targets, and some of the good smoke signals are MIPS and PowerPC (for 64-bit and 32-bit).
The sample targets I'd use are one of the following:
    - env: TARGET=mips-unknown-linux-gnu DISABLE_BENCHES=1 NO_FEATURES=1
    - env: TARGET=mips64-unknown-linux-gnuabi64 DISABLE_BENCHES=1 NO_FEATURES=1
    - env: TARGET=mips64el-unknown-linux-gnuabi64 DISABLE_BENCHES=1 NO_FEATURES=1
    - env: TARGET=mipsel-unknown-linux-gnu DISABLE_BENCHES=1 NO_FEATURES=1
    - env: TARGET=powerpc-unknown-linux-gnu DISABLE_BENCHES=1 NO_FEATURES=1
    - env: TARGET=powerpc64-unknown-linux-gnu DISABLE_TESTS=1 NO_FEATURES=1

Where you can use either PowerPC (which is native big-endian, but also has little-endian mode in 64-bit), or MIPS (same thing, different architecture), which both have 32-bit and 64-bit.

I have a POWER9 system I can give you access to (ssh/linux) if that's ever useful.

@lemire That might be useful to triage a few correctness issues, I've been running comprehensive tests on a lot of platforms. I think the issue is due to errors in soft-floats, and therefore an artifact and not a real issue, but I'd rather be cautious. I'll also run them using your C++ version just to make sure.


Convert Dropsonde tags to Prometheus labels

Take tags from dropsonde protocol and convert them to prometheus labels
so they can be used to query prometheus data
Closes: #42

The reporter of the linked issue reports success with this patch. What do I need to do to get this merged?

Thanks @mathias-ewald!


added first part of trusted ai pipeline

Everything seems to be working for me, I needed to set a runtime image for one of the nodes though. What parts of this are trusted ai? Only lime?

Everything seems to be working for me, I needed to set a runtime image for one of the nodes though. What parts of this are trusted ai? Only lime?

everything referenced from train-trusted-ai.pipeline - so it runs parallel to yours...(which might make sense as not every computer vision tasks is a TrustedAI UC)

everything referenced from train-trusted-ai.pipeline - so it runs parallel to yours...(which might make sense as not every computer vision tasks is a TrustedAI UC)

@bourdakos1

@bourdakos1


Update rolls

Add new event rolls
edit: I would change the event rolls id because there will be more rolls like this and id 0 is not ok, for a data handling

@Ley21 I'm going to change it to a letter-number combination system. The 0 was there as a holdover for the lone Pa-paya seasonal that got renumbered.


Don't call fs_read_and_perturb for bool array

pp_ser.py generates the fortran calls for write, read and read & perturb but fs_read_and_perturb is not implemented for bool arrays.
It clearly doesn't really make sense to perturb the boolean masks, but in the current state trying to serialize a bool array generates non compilable code (even if only write or read is used).
I suspect pp_ser.py doesn't know about data types, right? Couldn't fs_read_and_perturb_bool simply call fs_read_bool?

@phmarti As you said, it doesn't make sense to perturb a boolean array. I think your solution is fine. By the way, what is done for integer at the moment? I think it also doesn't make so much sense to perturb it ...

👍

integer also simply call fs_read_int

PR #138

@phmarti So far looks like it's not tested

I would like to keep this issue open as we are introducing again code in the serialbox core which is driven by an application (pp_ser) just because it is not smart enough to use the library properly...
To be more specific: the core API is complete and descriptive by not providing perturbation for datatypes where it does not make sense. #138 introduces (more) functions which are lying about its functionality. They pretend to perturb, but don't do it...

Ok ... make sense


Create Line Plot Mixin

Create a mixin for drawing the line plot in the graph. Mixin should add both a set of circles for each data point as well as lines connecting them. Mixin should render out SVG elements in groups so they can be manipulated together. Mixin render output might look something like:
<g id="PlotCircles>
   <circle cx="50" cy="50" r="2"/>
   <circle cx="51" cy="51" r="2"/>
   <circle cx="52" cy="52" r="2"/>
</g>
<g id="PlotLines>
   <line x1="50" y1="50" x2="51" y2="51" />
   <line x1="51" y1="51" x2="52" y2="52" />
</g>

:tada: This issue has been resolved in version 1.2.0 :tada:
The release is available on:

GitHub release
npm package (@latest dist-tag)

Your semantic-release bot :package::rocket:

Forgot to add tests for dates


[WIP]fix log forward and logrotate

fix below issues:

some services related log didn't sent to logstash server, which
include mysql/rabbitmq/mongodb
for distro,  service has default logrotate configuration, and ursula
create new logrotate configuration, which cause duplicate.
some service's logpath or log filename are different for ubuntu and
rhel, for example: apache, ceilometer
some service's logrotate configuration has issue, which cause new
log file's size always be zero.  for example: ceph / mongodb

retest

retest

retest

ok to test


[Logging v1] Add Windows 20H2 to logging

Relevant repos:

https://github.com/rancher/fluentd
https://github.com/rancher/system-charts

This is a follow up of : https://github.com/rancher/rancher/issues/30808
Latest status: https://github.com/rancher/rancher/issues/30808#issuecomment-778511953

This will require a future Kubernetes version to support Windows 20H2. The first likely candidate is Kubernetes v1.21.x,  but we will need to monitor this.
Docs: https://kubernetes.io/docs/setup/production-environment/windows/intro-windows-in-kubernetes/


Reference_Application_Code_Analysis fails when Reference_Application_Build build number is ahead of Reference_Application_Unit_Tests

Hi,
In the Java_Reference_Application pipeline in Jenkins, it seems like Reference_Application_Code_Analysis fails when the build number of the Reference_Application_Build is higher than the build number of the Reference_Application_Unit_Tests (this would happen if a build fails at some point). I was getting the following error:
[EnvInject] - Inject global passwords.
Started by upstream project "ExampleWorkspace/ExampleProject/Reference_Application_Unit_Tests" build number 6
originally caused by:
 Started by upstream project "ExampleWorkspace/ExampleProject/Reference_Application_Build" build number 7
 originally caused by:
  Triggered by Gerrit: http://gerrit:8080/gerrit/
[EnvInject] - Loading node environment variables.
[EnvInject] - Preparing an environment for the build.
[EnvInject] - Keeping Jenkins system variables.
[EnvInject] - Keeping Jenkins build variables.
[EnvInject] - Injecting as environment variables the properties content
WORKSPACE_NAME=ExampleWorkspace
PROJECT_NAME=ExampleWorkspace/ExampleProject
PROJECT_NAME_KEY=exampleworkspace-exampleproject

[EnvInject] - Variables injected successfully.
[EnvInject] - Injecting contributions.
Building remotely on Swarm_Slave-6839cf1d (swarm java8 ldap aws docker) in workspace /workspace/ExampleWorkspace/ExampleProject/Reference_Application_Code_Analysis

Deleting project workspace... done

[ssh-agent] Using credentials jenkins (ADOP Jenkins Master)
[ssh-agent] Looking for ssh-agent implementation...
[ssh-agent]   Java/JNR ssh-agent
[ssh-agent] Started.
[ssh-agent] Stopped.
ERROR: Unable to find a build for artifact copy from: Reference_Application_Unit_Tests
Warning: you have no plugins providing access control for builds, so falling back to legacy behavior of permitting any downstream builds to be triggered
Finished: FAILURE

After triggering a manual build on Reference_Application_Unit_Tests the whole flow was working again.

Can this be closed here and raised in the correct repository please?
https://github.com/Accenture/adop-cartridge-java

Hi @josequaresma,
we had this issue with ADOP on Azure solution. We resolved it by using the option using latest successful build instead of providing $B as parameter.

Closing this issue as it should be raised under https://github.com/Accenture/adop-cartridge-java


Fix Testnet for main branch (non MTP)

Consensus parameter for testnet (non MTP) has a buggy serial check that causes version 13.6.6 not to sync past 60534 on master testnet.
To fix this in next release.

Further issues with testnet (will add more as I find them):
IsBlockchainSynced function in znode-sync.cpp does not properly update at the chain tip on testnet/regtest.

This is because not enough testnet znodes I believe.
---- On Fri, 10 Aug 2018 23:37:00 +0800<EMAIL_ADDRESS>wrote ----
Further issues with testnet (will add more as I find them):
IsBlockchainSynced function in znode-sync.cpp does not properly update at the chain tip on testnet/regtest.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

Potentially, but as it's a general function for seeing whether the chain is synced it should be fixed anyway


Issues with systemd's DynamicUser and StateDirectory options

When using systemd's DynamicUser and StateDirectory options together, and trying to persist /var/lib/<service name>, the service fails to start because systemd expects the directory not to exist in order to setup the directory. This is obviously incompatible with how we bind mount the directory, but a simple solution for this issue doesn't come to mind. This may be unfixable, but I figured I'd open a issue in case anyone has any ideas.

According to systemd.exec(5).

If DynamicUser= is used, the logic for CacheDirectory=, LogsDirectory= and StateDirectory= is slightly altered: the directories are created below /var/cache/private, /var/log/private and /var/lib/private, respectively, which are host directories made inaccessible to unprivileged users, which ensures that access to these directories cannot be gained through dynamic user ID recycling. Symbolic links are created to hide this difference in behaviour. Both from perspective of the host and from inside the unit, the relevant directories hence always appear directly below /var/cache, /var/log and /var/lib.

So you might want to persist /var/lib/private/<state directory name>.

Can confirm persisting /var/lib/private/<state directory name> works, thanks @linyinfeng!


feature(dataplanes): add inbound rules to the summary panel

Note: This PR may or may not change depending when https://github.com/kumahq/kuma-gui/pull/2276 goes in, as I think https://github.com/kumahq/kuma-gui/pull/2276 gives lets us expand on this easier.
This PR adds the policy rules for standard dataplane inbounds to the summary panel:

Please let me know if there are any other suggestions for presenting this visually.
Similar visuals for policy rules for gateway inbounds are still to come (see above note on https://github.com/kumahq/kuma-gui/pull/2276), as are rules for when you click on outbounds (which I think will need separate information from the service insight endpoint which we don't request as yet)

I've been working on adding more data to this one such as matchers and origins. I'm gonna merge this and follow up pretty quick rather than add it on the end here.


Initial deployment trevor

Deployed API with basic scaffolding and previous routes in place from previous cohort
Adds a link to README.md

sounds good

Great! Thank you Shahnam.


Hard found netly on nuget by search engines. e.g: google bing (v4)

Is your feature request related to a problem? Please describe.
Update Netly tags, because the package is hard found on nuget by topic search.
Describe the solution you'd like
add websokets and others relevant tags to be found easy on nuget.
e.g: netly socket sockets lib alec1o kezero ws websocket websockets websocket-server websocket-client client server ...
Describe alternatives you've considered
N/A
Additional context
Update tags on src/Netly.csproj
Update nuget readme to contain websocket and http examples.

Fixed: f47f362


Add request name and description to template.

Hey @Zodiase,
thank you for your contribution. Unfortunately, we cannot accept the PR as it is, as multiline descriptions will break the comment section and spill over to the code section.
consider using this structure instead when there are multiple lines in the description:
: '{{{request.description}}}'

This solution is only nice when there are multiple lines, and quite ugly for single line comments, though. Maybe check for the number of lines and pick the best format for it ?

I see. Probably why none of the exporters I've used so far actually cared to export the descriptions.
I don't like any of the shell comment block solutions. So I made a bit change to add a cUrl exporter specific request property cURLDescription that guarantees to have a #  before every line of the description.

Awesome!
A minor suggestion would be to drop the # in front of {{{request.cURLDescription}}} in curl:mustache, then you wouldn't have to care about index in cURLCodeGenerator.coffee.
I'll leave you some time to fix it if you want to, but if you don't want/care, I'll merge it as soon as you get back to me.
Thank you for your contribution :+1:

The reason for leaving out the first #  from the logic is to make the mustache template make more sense semantically on its own. I'd rather leave it like this.

Alright!
Thanks for the contribution


Uglify not working with gulp-sourcemaps

When I try and uglify my code without concatenating it and then generate source maps I get an error message like:
gulp-sourcemap-write: source file not found:C:\Rob\Dropbox\Repos\gulpTest\?

my gulp task looks like this
gulp.task('js', function () {
    return gulp.src('app.js')
        .pipe(sourcemaps.init())
        .pipe(uglify())
        .pipe(sourcemaps.write())
        .pipe(gulp.dest('build'));
});

I'm using the following versions of npm modules
  "dependencies": {
    "gulp": "3.8.8",
    "gulp-uglify": "1.0.1",
    "gulp-sourcemaps": "1.1.5"
  }

There is a zipped up version of the project here https://dl.dropboxusercontent.com/u/20066539/Forum Links/Other/gulpTest.zip
This issue is related to https://github.com/floridoo/gulp-sourcemaps/issues/34

@terinjokes You ended up accepting #74 to fix this even though I proposed the same solution here almost 2 weeks earlier and you never even commented on it. Is this a fluke and I should continue to expect that if I post a proposed solution in an issue comment that it'll be considered before a later pull request by someone else is accepted and the issue is closed, or do I need to open a pull request in this situation in the future to have my proposal considered?

@jmm I work on this in batches, and didn't see your earlier comment, sorry for missing it. In general, pull requests have more visibility on GitHub, and as you can see in this thread, @floridoo and I had previously worked on trying to resolve this.

@floridoo and I had previously worked on trying to resolve this.

Yes, I thought that possible solutions were being discussed in this issue, by you and @floridoo and a number of other people. Reviewing the thread I do see that the idea was already discussed in these comments:
@terinjokes

UglifyJS does not preserve the "sources" array in the source maps it generates. Previous versions of this plugin attempted to correct this, but this introduced several other bugs when UglifyJS re-ordered the sources.

@floridoo

@terinjokes vinyl-sourcemaps-apply needs a valid sources property in order to work correctly. You can fix this by setting sources to file.relativefile.relative.split(path.sep).join('/') (= the input file to uglify) on the source map generated by uglify before passing it to vinyl-sourcemaps-apply.

Sorry I missed that. Honestly by the time I'd read through the issue and gone through debugging the problem myself I'd lost track of those comments. It was also about 3 months between those comments (and your last comment about that: "Ok, I'll give this a shot.") and mine, so I think I missed the connection that the "solution" I "discovered" had been on the shelf for 3 months while a bunch of people continued to pipe up asking for / investigating for a solution.
In the future in this situation I'll create a pull request. Admittedly in this case it still wouldn't have been an original idea.

So is this fixed now in the latest version?  I just tried using the latest version of uglify with source-map and am getting nothing.

Same issue here:
gulp.task('js', function () {
gulp.src(['ng/module.js', 'ng/**/*.js'])
.pipe(concat('app.js'))
.pipe(ngAnnotate())
.pipe(uglify())
.pipe(sourcemaps.write())
.pipe(gulp.dest('assets'));
});
I am using the following versions and sourcemaps does not do anything:
"gulp": "^3.8.11",
"gulp-concat": "^2.5.2",
"gulp-ng-annotate": "^0.5.2",
"gulp-sourcemaps": "^1.5.1",
"gulp-uglify": "^1.1.0",
Regards,
Salim

This order of pipes works for me
gulp.src(source_paths.scripts)
        .pipe(sourcemaps.init())
        .pipe(ngAnnotate())
        .pipe(uglify({compress: {join_vars: false, sequences: false}}))
        .pipe(concat(dest_paths.scripts))
        .pipe(sourcemaps.write('../sourcemaps'))
        .pipe(gulp.dest('www'))
        .on('end', function () {
            exec('mv sourcemaps/atuhi.js.map sourcemaps/atuhi-' + VERSION + '.js.map');
        })

I'm using:
gulp.src([sources.coffee.core, sources.coffee.all])
.pipe sourcemaps.init()
.pipe coffee().on 'error', swallowError
.pipe concat 'app.min.js'
.pipe uglify()
.pipe sourcemaps.write()
.pipe gulp.dest dist.js
However, I get a sourcemap for app.min.js as well, how can we avoid this?

@terinjokes I'm getting the same problem as @cgeo7. uglify thinks the output of concat (app.min.js) is a source and creates an invalid source map for it...
The result is that the browser developer tools show the original coffeescript sources correctly but breakpoints in them don't work. There's a 404 response for GET app.min.js.
Without the uglify step, everything works.

So after doing a few more tests, it seems uglify doesn't like the way coffee passes down its source maps. concat doesn't seem to have an effect either way so I've omitted it to isolate the problem.
gulp.src('assets/test.coffee')
  .pipe(sourcemaps.init())
  .pipe(coffee()) // produces a correct test.coffee source map
  .pipe(uglify()) // produces an invalid test.js source map
  .pipe(sourcemaps.write())
  .pipe(gulp.dest('./public'));

After investigating, I found that the issue is the same as in many other
libraries: mozilla's sourcemap library cannot merge two sourcemaps.
The merging function does not do what anyone would expect, thus all plugins
using it don't work.
There is currently no way to implement sourcemap merging. The sourcemaps
format simply isn't compatible with it.

On Thu, May 14, 2015 at 9:18 AM, Sami Turcotte<EMAIL_ADDRESS>wrote:

So after doing a few more tests, it seems uglify doesn't like the way
coffee passes down its source maps. concat doesn't seem to have an effect
either way so I've omitted it to isolate the problem.
gulp.src('assets/test.coffee')
.pipe(sourcemaps.init())
.pipe(coffee()) // produces a correct test.coffee source map
.pipe(uglify()) // produces an invalid test.js source map
.pipe(sourcemaps.write())
.pipe(gulp.dest('./public'));
—
Reply to this email directly or view it on GitHub
https://github.com/terinjokes/gulp-uglify/issues/56#issuecomment-101949812
.

--
Etienne Folio
Tel : +33 (0)6 27 58 39 14
L.systems • http://lsystems.fr

Can anyone link to a repo where they have this working?

Never got it working.  Gave up.

I think I am expecting the same issue with sourcemaps for browserify -> babelify stuff. Anyone got it working?

@bf It may be significantly easier for you to use gulp-if to avoid source maps while in development.

Thanks, @terinjokes .
Just to spare others the hassle as I have spent a couple of days with this issue, this is my final gulpfile.js with browserify / babel / uglify and sourcemaps:
return browserify(inputFile, {
    debug: true,
    extensions: ['.jsx', '.js', '.json'],
    cache: {},
    packageCache: {}
  }).transform(babelify, {
    sourceMaps: true,
    ignore: /(vendor)|(node_modules)/
  }).bundle()
  .pipe(gulpif(!isProductionBuild, exorcist('bundle/js/app.js.map')))
  .pipe(source('app.js'))
  .pipe(gulpif(isProductionBuild, streamify(uglify)))
  .pipe(gulp.dest(config.output.jsDir))
  .pipe(gulpif(!isProductionBuild, livereload()));


ability to manipulate configuration variables

I've encountered a similar need to #73888 . I pass ${workspaceFolder} as a parameter to some (ms-vscode.cmake-tools plugin) and it parses the string, producing the following error:
[cmake]   Syntax error in cmake code when parsing string
[cmake]
[cmake]     c:\workspace\EmptyEpsilon/../SeriousProton/src/soundManager.cpp

So for my specific case I need a version of workspaceFolder with either backward slashes, or double forward slashes. But in general I think a way to manipulate the value (replace?) can come in handy.

Where are you passing ${workspaceFolder} as a parameter?
Please be aware that in general variables like ${workspaceFolder} can only be used in launch.json and tasks.json.

Where are you passing ${workspaceFolder} as a parameter?
as part of a parameter. This is a workspace configuration I wrote, which several people use, and for some reason no longer works.

Please be aware that in general variables like ${workspaceFolder} can only be used in launch.json and tasks.json.
could you please show me a reference to what configuration should go where?so that I can re-write my configuration, or at least offer a heads up to the vscode-cmake-tools people

@bpasero do we have a list of variables that can be used in settings.json?
(The variables available in launch.json and tasks.json are specified here: https://code.visualstudio.com/docs/editor/variables-reference)

Forwarding to @roblourens @sandy081  do we have a complete list of variables that can be used in settings.json?
Maybe they should be showing up in IntelliSense?

They do show up in intellisense, but they are only supported as special cases for specific settings.

We do not support any variables in settings. Its up to each setting to define their own variable and resolve them.
See - #2809

/duplicate


Is there anyone that succesfully run the code ?

Hi,
I downloaded reqirements and npn dependencies but many errors..
UI : localhost:3000 opening but model downloading gives error. also document upload also gives error.

Yes , I also met the same problem.  but after i  download the models manually  , it runs.

I downloaded the model and put the models folder.
gptj_model_load: loading model from 'models/ggml-gpt4all-j-v1.3-groovy.bin' - please wait ...
still errors as shown in the video
https://github.com/SamurAIGPT/privateGPT/assets/17505439/0b63d483-037f-4828-806a-982ba967c2dd

@kingsky-z  yes it runs . It was the silly problem.. I tried to load doc from different computer but server looking the local path.
additionally other than english lang is not supported I assume

here is working well, just follow step by step... but I don't know why the answer is not so precise like martinez' one. Still trying to figure what is the difference.

Working well in a few minutes.

it takes time to give a reply


Add EWM pandas method to dask

Reopening PR as suggested by @quasiben in #6116. Contributors are welcome for the development of EWM cov and corr, following the discussion in #4184 with @jakirkham.
I'm new to open-source contribution so I didn't find how to run tests. I ran black code formatter however. Could you guide me through testing for this PR? Thanks!

[ ] Tests added / passed
[x] Passes black dask / flake8 dask

Thanks for the contribution @MichaelKarpe!  For testing I would recommend looking at test_dataframe notice that most tests use the assert_eq function to compare dataframes in dask/pandas


”Iștihaza”, ”Maldaoci”, ”Sâniacob” are listed in the drop-down menu

Description:
When user writes ”Iștihaza”, ”Maldaoci”, ”Sâniacob” the locations appear in the drop-down menu next to the comune and the county which is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Iștihaza"

Expected results
The location appears in the drop-down menu as "Sat Iștihaza, MUREȘ (Ațintiș)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Maldaoci"

Expected results
The location appears in the drop-down menu as "Sat Maldaoci, MUREȘ (Ațintiș)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Sâniacob"

Expected results
The location appears in the drop-down menu as "Sat Sâniacob, MUREȘ (Ațintiș)".


frames vs. step in --num-timestep flag

Hi,
In most dqn related papers the graphs are plotted as the current test reward vs. frames seen by the agent.
The full training process is achieved by running for 200M Frames.
In you implementation of deepq, it is not clear whether the number of timesteps given in --num-timesteps is the same number as frames (FRAMES=STEPS), or if each timestep equals 4 frames (FRAMES=4xSTEPS).
The confusion's origin is the different wrappers used for skipframe and frame wrapping and that fact that train_freq=4 in run_atary.py.
Can you please clarify?
Thanks in advance,
Lior
p.s.
Because DQN is an off-policy algorithm, I've added an online testing process that runs a series of test  epochs every defined number of steps. Tell me if it's needed as a pull request.

For all of the Atari baselines in this repo, we use the MaxAndSkipEnv wrapper. This means that every timestep spans four frames. If train_freq=4, then there is an update once every four timesteps, or 16 frames.
As a historical note, at one point we converted the entire repository to use timesteps everywhere. Before that, it was really confusing to keep track of frames vs. timesteps.
Re: your p.s.: usually we don't take pull requests for experimental techniques, only for implementations of well-established algorithms.


follow-up fix to THRIFT-5237 Implement MAX_MESSAGE_SIZE and consolidate limits ...

Client: cpp
Patch: Jens Geyer
Thanks to @taras-protsiv who pointed this out.

@zeshuai007 could you please have a look at this? I'm pretty sure about the (rather trivial) change but it breaks one of the tests. Can we solve that before 0.14.0 please?

@zeshuai007 could you please have a look at this? I'm pretty sure about the (rather trivial) change but it breaks one of the tests. Can we solve that before 0.14.0 please?

I'll check this out today.


Search: has a tooltp with a keybinding

https://dev.azure.com/monacotools/Monaco/_build/results?buildId=119617&view=logs&j=3792f238-f35e-5f82-0dbc-272432d9a0fb&t=00d0ae10-f5a4-5438-a3b8-c58076933cab
1) VSCode Smoke Tests (Electron)
       VSCode Smoke Tests (Electron)
         Search
           has a tooltp with a keybinding:
     Error: Expected search tooltip to contain keybinding but got undefined
      at Context.<anonymous> (out/areas/search/search.test.js:21:23)
      at processTicksAndRejections (internal/process/task_queues.js:95:5)

Yes, the test is now disabled.

I do not understand the course of action here? The issue is closed, yet the test is still there but disabled. Then remove it?


Contrast issue on company-mode / Selection invisible on magit log

Hello there!
Thanks again for this awesome theme!
I'd like to file a few issues:
When using company-mode for auto-completing it is really hard to see the "green" while selected.
https://github.com/catppuccin/emacs/assets/16169950/70de8bd5-c22b-45ec-887d-554d1e215a90
https://github.com/catppuccin/emacs/assets/16169950/640b77c0-5346-432b-8be9-204ab9a29b3a
If I load a log on magit with M-x magit RET l l RET (lower case L's) and then I try to select the commit text, the color of the selection is the same as the background (that is also highlighted).
https://github.com/catppuccin/emacs/assets/16169950/1ebc8c1f-499b-4d71-b76c-85d79936a83a

Solved by #100.


No such file or directory

mv: cannot stat /etc/openvpn/server/EasyRSA-3.0.5/': No such file or directory chown: cannot access /etc/openvpn/server/easy-rsa/': No such file or directory
openvpn-install.sh: line 231: cd: /etc/openvpn/server/easy-rsa/: No such file or directory
openvpn-install.sh: line 233: ./easyrsa: No such file or directory
openvpn-install.sh: line 234: ./easyrsa: No such file or directory
openvpn-install.sh: line 235: ./easyrsa: No such file or directory
openvpn-install.sh: line 236: ./easyrsa: No such file or directory
openvpn-install.sh: line 237: ./easyrsa: No such file or directory
cp: cannot stat pki/ca.crt': No such file or directory cp: cannot stat pki/private/ca.key': No such file or directory
cp: cannot stat pki/issued/server.crt': No such file or directory cp: cannot stat pki/private/server.key': No such file or directory
cp: cannot stat pki/crl.pem': No such file or directory chown: cannot access /etc/openvpn/server/crl.pem': No such file or directory
openvpn-install.sh: line 342: /etc/systemd/system/openvpn-iptables.service: No such file or directory
openvpn-install.sh: line 343: systemctl: command not found
openvpn-install.sh: line 358: systemctl: command not found
cat: /etc/openvpn/server/easy-rsa/pki/ca.crt: No such file or directory
sed: can't read /etc/openvpn/server/easy-rsa/pki/issued/client.crt: No such file or directory
cat: /etc/openvpn/server/easy-rsa/pki/private/client.key: No such file or directory

same problem here on ubuntu 14

https://github.com/angristan/openvpn-install

@robinbd87 what distribution are you using?
@BobZombiE69 Ubuntu 14.04 reached its end of life and isn't supported. You need to upgrade your system.


ValueError: Target size (torch.Size([128, 1])) must be the same as input size (torch.Size([256, 1]))

Hello, distinguished researcher
Your research is very interesting and contributes greatly to evolutionary algorithms. But I have some problems when I reproduce your code, can you help me?
Personally, I guess I forgot to modify a parameter. It is ok for me to reproduce EGAN before.

Looking forward to your reply and best wishes

@fly2tortoise
Thank you for interesting in our work.
Just as you guesting, you may not correctly modify the related hyperparameter.
Please carefully check your codes.
Best!
Shiming

Distinguished researcher, your code may still have some problems, and I'm still not working properly.  but

I have the same problem, have you solved it?

I have the same problem, have you solved it?
It's a better solution, I forget the specifics, it seems to require deleting part of the Tensor list, I'll dig through the code sometime.

It's a better solution, I forget the specifics, it seems to require deleting part of the Tensor list, I'll dig through the code sometime.

wait your answer

It's a better solution, I forget the specifics, it seems to require deleting part of the Tensor list, I'll dig through the code sometime.

wait your answer

I changed one line of code and it works fine, it's in models/cdegan_model.py,about 150 lines or so

It's a better solution, I forget the specifics, it seems to require deleting part of the Tensor list, I'll dig through the code sometime.

wait your answer

 I changed one line of code and it works fine, it's in models/cdegan_model.py,about 150 lines or so

in options/train_options.py,it work!
parser.add_argument('--bs', type=int, default=2048, help='dataset fragment')

@fly2tortoise
Thank you for interesting in our work. Just as you guesting, you may not correctly modify the related hyperparameter. Please carefully check your codes.
Best! Shiming

@fly2tortoise
Thank you for interesting in our work. Just as you guesting, you may not correctly modify the related hyperparameter. Please carefully check your codes.
Best! Shiming

I would like to ask you one more question. Can you calculate the fid of TTUR?

Yes, CDE-GAN is a very good paper. Please configure your environment strictly according to the settings given by the author. Use tensorflow 1.15 for computation.

qq272574497 , please install and configure according to the following environment, if you can't run TTUR, the probability is that it's a problem with the TensorFlow version as well as CUDA, thanks.
PyTorch 1.3.0
TensorFlow 1.15.0
cuda 10.0

qq272574497 , please install and configure according to the following environment, if you can't run TTUR, the probability is that it's a problem with the TensorFlow version as well as CUDA, thanks. PyTorch 1.3.0 TensorFlow 1.15.0 cuda 10.0

cuda 11.7 TensorFlow 2.X  PyTorch 1.7 it work

@fly2tortoise
Thank you for interesting in our work. Just as you guesting, you may not correctly modify the related hyperparameter. Please carefully check your codes.
Best! Shiming

I would like to ask you one more question. Could you repeat the experiment? Don't know where the code is