Replacing Deepmatcher embeddings with own embeddings

Hi there,
I'm trying to replace the sequence embeddings for each attribute created by Deepmatcher with embeddings generated by Sentence BERT.
It seems the actual creation of the sequence embeddings happens in dataset.py and the final weighted sequence embeddings are stored in attr_embeddings[name]
Could I get away with simply replacing these vectors with my own or would that lead to issues? Are they in the same order as the original dataset (the examples)?

hi!  jweckschmied
could you solve this?

I have the same question as well. It would be nice if the developers can point us in some directions towards if and how we can replace the underlying embeddings with other options

ziqizhang to solve this I save the model under the name "wiki.es.bin", because deepmatcher looking for file called wiki.{}.bin
model_fast = fastText.train_unsupervised("text.txt")
model_fast.save_model('wiki.es.bin')
check  class FastTextBinary(vocab.Vectors) in field.py
https://github.com/anhaidgroup/deepmatcher/blob/master/deepmatcher/data/field.py

ziqizhang to solve this I save the model under the name "wiki.es.bin", because deepmatcher looking for file called wiki.{}.bin
model_fast = fastText.train_unsupervised("text.txt")
model_fast.save_model('wiki.es.bin')
check class FastTextBinary(vocab.Vectors) in field.py
https://github.com/anhaidgroup/deepmatcher/blob/master/deepmatcher/data/field.py

This workaround helped a lot (I just want to mention, that you need to use from fasttext import FastText)
Regarding this issue it would be preferable to make it possible, that embeddings are not hardcoded and can be provided as a path to a file as well. It's likely that the setup of fasttext might change in future or that they will add larger wordvectors with different namespaces which could then be used a lot easier. (Just saying)

The above example is not working as expected,
I had to change the save path by applying this code:
model_fast.save_model(
                    os.path.join(
                        os.path.expanduser("~"),
                        ".vector_cache",
                        "wiki.es.bin"
                    )
                )

because this is the hidden directory which is used by the deepmatcher.data.process function, to store and read embeddings.

@mathisloevenich - I think you don't have to specifically only store it in .vector_cache folder as long as you specify the parameter 'embeddings_cache_path' to the directory to where your wiki.{}.bin file is. For example, if your fasttext embedding model is stored in 'C:\Users\Username\Downloads\Embeddings\wiki.es.bin', then you have to add a parameter in dm.data.process such as
train, validation, test = dm.data.process(embeddings = 'wiki.es.bin',  	embeddings_cache_path='C:\Users\Username\Downloads\Embeddings',     path=output_path,     train='train.csv',     validation='validation.csv',     test='test.csv')
And it should work

@MocktaiLEngineer Thanks for the hint. Makes sense but I was not aware of that option.


Add GitHub profile

Correct a formatting error and add own GitHub profile in the list.

Hey @pixlforge  thnx for contributing , Contribute in this year's Hacktoberfest in October 2020 and follow me on Github and Star this repo for updates and notifications about the project.


Is there any plans to translate with other languages?

Hi, I'm a person who'll going to use the edgex foundry system for our own services.
I want to know if you guys have any plans about translating.
As Korean and as edgex user, I hope I can help you guys with documentation things.
As a result, I want to make the documentation pages(like git book) or manual with Korean version.
Is there any way to get the separated docs directories with specific languages?
Thanks.

+1, I claim Chinese translation.
cc @jpwhitemn

@andyf1967

@devFallingstar in the short term we didn't have any plans to translate into other languages. Mainly due to the fact that no one had volunteered. However, if you can help then we can think about how to make this happen.  We have created the new documentation set in reStructuredText and use Sphinx to generate HTML. I know that Sphinx has support for Internationalization (see http://www.sphinx-doc.org/en/master/usage/configuration.html#intl-options) but don't know too much about it and it's something that we'll have to look into.
@yanghua thank you for volunteering to help with a Chinese translation
At the next Core WG meeting I'll see it we can add the topic it to the agenda and get  the ball rolling.
cc @tsconn23 @jpwhitemn

We are seeing an up-tick in following of the project in Asia Pacific & Japan (thanks in no short measure to people like @yanghua and others).  Will add this to the list of needs of the project.  Of course we welcome volunteers willing to provide the translation of documentation, but we will also look into what other open source projects have done and if there is the potential of finding additional funding to accelerate.  No promises, but certainly worthy of research.

hi @jpwhitemn no need for funding, just for expanding Edgex's influence. If you can promote this thing, that would be better.

hi @jpwhitemn
I don't need for funding too, also I want to expand edge's influence as @yanghua said.
And, plus, I claim Korean translation with our team members(total 3 members include me).
Thanks for your opinion.

@devFallingstar @yanghua and others with interest in multi-language documentation support... we discussed this topic in the Core Working Group today.  Your willingness to contribute the initial translation is really appreciated.  What thoughts do you have on how to keep the documentation up to date once the initial translation is complete?  Would this be something you continue to update?  Do you think we could find sponsoring companies to help keep the documentation up to date (either by providing long term commitment of resources or even funding for professional writers/translators)?  Beyond the initial translation, what ideas do you have on how we keep the documentation current?

@jpwhitemn AFAIK, many Apache top level such as (Spark, Flink, Beam) they all have not official version for Chinese document. The PMC and community will keep update the official document which is a part of the project repository, for example Flink doc it will go forward with the whole project (if a contributor implements a new feature the committer maybe ask he provide the document, if part of document is old, contributor could create a issue to update it). The document‘s version also keeps consistent with the project. And for internationalization, it seems Apache community let it free development. For example, here is a flink-china repository which hosted the official document's Chinese version. For edgex, we could let the document repository hosted in 'edgexfoundry' organization.
Summary:
If there are sponsoring companies and under the condition that allows in funding, that would be better. Yes, it would be more professional.
However, community-driven is freedom , fast and zero-cost. It depends on the growth rate of Edgex, If the Edgex grows fast, community would defeat single translate organization.
About the update, all things based on the official's document version, the contributor (or volunteer) would calibrate it. We could split the translate task into many sub tasks based on modules and create them as issues, the contributor will claim it then make a PR. The committer would calibrate it before approving the PR.

@jpwhitemn Actually, I think, there's many way to translate, repository by repository.
This project, edgex-go, is mixed project made with source code(go) and documents(some mark down based). So in my opinion, we need two track translation, one for code, and another for documents.
As I know, most of project I saw follow up the below steps.

choose the translation owner for each languages,
Any committer can make PR for their languages and owner of each language merge it after checking.
Each PR can managed with some guidelines or labels.
Does step is working with modularity and committer-driven based system, so it'll be good for initial translation.

Also I prefer the community-driven based for translation. Because as @yanghua said, we need the fast and zero-cost translation for initial translations. Moreover we need some user's passion that makes higher quality for our own result. Of course there's always pros/cons for each way, but at now, the translating without sponsoring is better than with it.

thanks Vino.  I have forward the issue along with your response up to the board for consideration.
On Thursday, May 10, 2018, 9:13:22 PM CDT, vinoyang<EMAIL_ADDRESS>wrote:
@jpwhitemn AFAIK, many Apache top level such as (Spark, Flink, Beam) they all have not official version for Chinese document. The PMC and community will keep update the official document which is a part of the project repository, for example Flink doc it will go forward with the whole project (if a contributor implements a new feature the committer maybe ask he provide the document, if part of document is old, contributor could create a issue to update it). The document‘s version also keeps consistent with the project. And for internationalization, it seems Apache community let it free development. For example, here is a flink-china repository which hosted the official document's Chinese version. For edgex, we could let the document repository hosted in 'edgexfoundry' organization.
Summary:
If there are sponsoring companies and under the condition that allows in funding, that would be better. Yes, it would be more professional.
However, community-driven is freedom , fast and zero-cost. It depends on the growth rate of Edgex, If the Edgex grows fast, community would defeat single translate organization.
About the update, all things based on the official's document version, the contributor (or volunteer) would calibrate it. We could split the translate task into many sub tasks based on modules and create them as issues, the contributor will claim it then make a PR. The committer would calibrate it before approving the PR.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@jpwhitemn Can I know the current progress?

Still waiting word from the board level on this @devFallingstar.  I will report as soon as I have feedback and direction.

Expect board response tomorrow (7/11/18)

After the recent governing board meeting, the feeling was that EdgeX should always encourage contributions when possible and unless they are counter to the architecture or direction of the project, accept code, documentation, demos, etc. whenever presented and after a proper vetting review.
This same approach applies to the issue of alternate language documentation.  In general, EdgeX will accept alternate language documentation (the default language for EdgeX is and will remain English, so alternate documentation would be in Chinese, Korean, etc.) for possible adoption into the project.  However, as with any donated artifact, it will need to be donated under the LF and Apache 2 license, made available under the EdgeX Foundry Holding GitHub account and subject to review by appropriate members of the community.  Specifically, we will need to find members of the community with the appropriate language skills to be able to review the material and ensure the membership of its accuracy (it correctly documents EdgeX) and quality (the content is grammatically correct and professional in the language provided).  If there are no members of the community who are able/willing to provide this review, we cannot accept the contribution.  After accepting the contribution, the artifact must be maintained and keep up with the general state of the EdgeX product.  In case of documentation, it must continually reflect the state of the system.  If the community sees that the documentation in an alternate language is falling out of sync with the product, it will be archived as would any artifact in the EdgeX community.
EdgeX encourages member companies with a strong interest in the alternate language documentation to take a leading role in encouraging the development, review and maintenance of the documentation in alternate languages – in other words to serve as sponsors of the alternate language documentation – in order to best serve the needs of the community long term.


Fix: fix the 'undefined' string in the css file issue.

There is an incorrect 'undefined' string in the css file after processing by
source-map-loader.
It's caused by the line
callback(null, input.replace(match[0], match[2]), map);

There are two kinds of comment format regex1 and regex2. regex1 only have one capture group so match[2] will be undefined. So maybe just replace by empty would be OK?

Thanks

No thanks :)
BTW, could you update the package on www.npmjs.com? I found that I can't update the package using npm update.
Thanks!


Further explanation of the -Enforce field is needed.

Will setting -Enforce to $False stop a file from being removed from the namespace if unfixable corruption is found?  The removal is a large problem that precludes the use of ReFS for many installations.  If setting that field to $False will sove the problem, it should be mentioned here.

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

ID: fbe5fe03-be42-2df6-b218-4d1d18c80f31
Version Independent ID: 19556698-0a53-f948-7cd6-d9f2189b2c49
Content: Set-FileIntegrity (Storage)
Content Source: docset/winserver2019-ps/storage/Set-FileIntegrity.md
Product: w10
Technology: windows
GitHub Login: @JasonGerend
Microsoft Alias: jgerend

Related to, https://github.com/MicrosoftDocs/windowsserverdocs/issues/1120

There's also some relevant discussion in this Reddit post: https://www.reddit.com/r/DataHoarder/comments/scdclm/testing_refs_data_integrity_streams_corrupt_data/


ansible-language-server not handling failed promise in window/showMessageRequest

Summary
This language server does not work with the Helix editor properly. I am experiencing an issue with ansible-language-server where it fails to handle a failed promise when sending the window/showMessageRequest. This problem occurs when running ansible-language-server on node 18.18.0.
The promise fails because the method for window/showMessageRequest is not implemented in Helix. As a result, the server correctly sends back the MethodNotFound JSONRPC reply.
This unhandled failed promise is likely harmless on node 16 where it seems to work OK, but it becomes fatal on node 18.
Extension version
$ ansible-language-server --version 1.2.1
VS Code version
n/a using Helix Editor
Ansible Version
$ ansible --version
ansible [core 2.14.3]
  config file = None
  configured module search path = ['/home/david/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python3/dist-packages/ansible
  ansible collection location = /home/david/.ansible/collections:/usr/share/ansible/collections
  executable location = /usr/bin/ansible
  python version = 3.11.2 (main, Mar 13 2023, 12:18:29) [GCC 12.2.0] (/usr/bin/python3)
  jinja version = 3.1.2
  libyaml = True

OS / Environment
Debian 12 Bookworm
Relevant log output
(Helix Log file)

2023-10-10T12:55:36.289 helix_term::application [WARN] Ignoring a client/registerCapability request because dynamic capability registration is not enabled. Please report this upstream to the language server
2023-10-10T12:55:36.342 helix_term::application [ERROR] Language Server: Method window/showMessageRequest not found in request 3
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "/usr/local/lib/node_modules/@ansible/ansible-language-server/node_modules/vscode-jsonrpc/lib/common/connection.js:565\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "                        responsePromise.reject(new messages_1.ResponseError(error.code, error.message, error.data));\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "                                               ^\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "ResponseError: Method not found: window/showMessageRequest\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "    at handleResponse (/usr/local/lib/node_modules/@ansible/ansible-language-server/node_modules/vscode-jsonrpc/lib/common/connection.js:565:48)\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "    at handleMessage (/usr/local/lib/node_modules/@ansible/ansible-language-server/node_modules/vscode-jsonrpc/lib/common/connection.js:345:13)\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "    at processMessageQueue (/usr/local/lib/node_modules/@ansible/ansible-language-server/node_modules/vscode-jsonrpc/lib/common/connection.js:362:17)\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "    at Immediate.<anonymous> (/usr/local/lib/node_modules/@ansible/ansible-language-server/node_modules/vscode-jsonrpc/lib/common/connection.js:334:13)\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "    at process.processImmediate (node:internal/timers:471:21) {\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "  code: -32601,\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "  data: undefined\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "}\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "\n"
2023-10-10T12:55:36.346 helix_lsp::transport [ERROR] ansible-language-server err <- "Node.js v18.13.0\n"
2023-10-10T12:55:36.354 helix_lsp::transport [ERROR] ansible-language-server err: <- StreamClosed
2023-10-10T12:55:36.621 helix_term::application [WARN] Ignoring a client/registerCapability request because dynamic capability registration is not enabled. Please report this upstream to the language server

This is something I just hit as well, is there any plan on addressing this issue?


feat: use a more compact point form for curve-25519's partition sum table (PROOF-870)

Rationale for this change
This PR updates curve25519 to use a more compact point form for its partition table accessor. Benchmarking shows this improves multiexponentiation performance by ~20%.
What changes are included in this PR?
Updates GPU and CPU backends and benchmark to use the compact point form for curve25519.
Are these changes tested?
Reuses existing tests.

:tada: This PR is included in version 1.59.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


change config path to current directory in portable version.

settings.json file location:
Windows: %appdata%\youtube-dlg\settings.json
Linux: ~/.config/youtube-dlg/settings.json

in portable version,hope the path is ./settings.json or %~dp0\settings.json
and it will automatically download/update youtube-dl.exe to %~dp0 in Windows.
Also,you can post youtube-dl-gui to the portableapps forums,and it can be distributed as easy-to-use .paf.exe installer files.

There is already an open issue for this, see #65.


Manual checking for new messages sometimes takes up to 3 minutes

Checklist

[X] I have used the search function to see if someone else has already submitted the same bug report.
[X] I will describe the problem with as much detail as possible.

App version
6.804
Where did you get the app from?
Google Play
Android version
14
Device model
Google Pixel 8a
Steps to reproduce
I use IMAP push notifications which works instant and reliably on home Wi-Fi. But on celluar 5G or LTE connection that sometimes drops the push notifications aren’t that reliable.
When the phone is locked for a while and then I pull down to check for new messages (and the celluar connection is fine) it sometimes takes up to 3 minutes of the animated icon to finally reach the Fetching Messages (translated from non-English language) message.
Expected behavior
New messages are checked immediately, the Fetching Messages message appears shortly immediately.
Actual behavior
The animated icon appears for up to 3 minutes before the Fetching Messages message appears and new emails are checked.
Logs
There are two log files. The phone was unlocked at 12:57 and I did the pull down to check new messages. It took about two minutes, the messages were checked around 12:58:45.
K9LogFiles.zip

Hallo,
habe die K-9 Mail auf einem Samsung Tablet mit Android 14.

Das war schon deutlich besser. Was kann ich tun?
Dank für eine helfende Rückmeldung!

The issue still persists in Thunderbird 8.1

Ich habe jetzt gewechselt von K-9 Mail auf Thunderbird. Das ursprüngliche Problem hat sich deutlich verbessert. Insofern bin ich jetzt deutlich zufriedener als vorher.

How can I enable the logging for more than 10 minutes? Now I travel and I can reproduce it 20 times a day. I just need to log at least last several hours.

The app is using Android's logging buffer which only holds a certain amount of data. Currently the only way to log longer time periods is to connect the Android device to a PC and continuously writing the adb logcat output to a file.

@cketti  I am travelling for a week and unfortunately the Thunderbird doesn't work 90 percent of time. I can reproduce this bug 20 to 40 times a day, almost everytime I swipe down to refresh the Inbox. There are two slightly different issues, read below.
It works fine when the phone is on Wi-Fi only or being placed at the same place for a week on 5G, not a single issue. When you start to move, walk the city, use public transport, subway, etc, new emails are lost in 90 percent of cases. No other application (Facebook, Messenger, Teams, Instagram) has a single issue with notifications on the same device and the same environment.

Original issue. New emails won't appear in the Inbox unless you manually swipe down. Then it takes up to 3 minutes to refresh. Note that push notifications works after that for a while. Attached log files Refresh3minutes.zip.

Second issue is the same, but after that push notifications no longer works. It doesn't help to close the Thunderbird from task list nor reset the 5G mobile connection. What helps is either Settings / Applications / Thunderbird / push Force to stop button and start Thunderbird again or switch from 5G to Wi-Fi and back, Attached log files Refresh3minutesAndPushNotificationsStopWorking.zip. I tried to send new emails to the account from laptop, but there was nothing in the log file that time. It seems as the push receiver is completely dead. I set the IMAP connection restart to 12 minutes, but even after 15 minutes there were no notifications.

I'd really like to use the Thuderbird, but the reliability in a real world cellular connection only is very bad.
Refresh3minutesAndPushNotificationsStopWorking.zip
Refresh3minutes.zip


Out-of-tree module build is broken

I was trying out the out-of-tree module build functionality (https://dev.px4.io/en/advanced/out_of_tree_modules.html), but it seems to be broken at the moment. I suspect that this is due to the recent param parser refactoring.
Mohammeds-MacBook-Pro:Firmware kabir$ make px4fmu-v3_default EXTERNAL_MODULES_LOCATION=/Users/kabir/Development/PX4/uasys-px4-modules
-- CMAKE_MODULE_PATH: /Users/kabir/Development/PX4/Firmware/cmake
-- Nuttx build for px4fmu-v3 on m4 hardware, using nsh with ROMFS on px4fmu_common
-- Build Type: MinSizeRel
-- PX4 VERSION: v1.6.2-37-ge6159d9e5
-- CONFIG: nuttx-px4fmu-v3-default
CMake Deprecation Warning at /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeForceCompiler.cmake:69 (message):
  The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
  CMAKE_C_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:31 (cmake_force_c_compiler)
  /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeDetermineSystem.cmake:88 (include)
  CMakeLists.txt:273 (project)

CMake Deprecation Warning at /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeForceCompiler.cmake:83 (message):
  The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
  CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:37 (cmake_force_cxx_compiler)
  /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeDetermineSystem.cmake:88 (include)
  CMakeLists.txt:273 (project)

CMake Deprecation Warning at /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeForceCompiler.cmake:69 (message):
  The CMAKE_FORCE_C_COMPILER macro is deprecated.  Instead just set
  CMAKE_C_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:31 (cmake_force_c_compiler)
  build_px4fmu-v3_default/CMakeFiles/3.8.2/CMakeSystem.cmake:6 (include)
  CMakeLists.txt:273 (project)

CMake Deprecation Warning at /usr/local/Cellar/cmake/3.8.2/share/cmake/Modules/CMakeForceCompiler.cmake:83 (message):
  The CMAKE_FORCE_CXX_COMPILER macro is deprecated.  Instead just set
  CMAKE_CXX_COMPILER and allow CMake to identify the compiler.
Call Stack (most recent call first):
  cmake/toolchains/Toolchain-arm-none-eabi.cmake:37 (cmake_force_cxx_compiler)
  build_px4fmu-v3_default/CMakeFiles/3.8.2/CMakeSystem.cmake:6 (include)
  CMakeLists.txt:273 (project)

-- The ASM compiler identification is GNU
-- Found assembler: /usr/local/bin/arm-none-eabi-gcc
-- Found PythonInterp: /usr/local/bin/python (found version "2.7.13")
-- Found PY_jinja2: /usr/local/lib/python2.7/site-packages/jinja2
-- C compiler: arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
-- C++ compiler: arm-none-eabi-g++ (GNU Tools for ARM Embedded Processors) 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
-- External modules: /Users/kabir/Development/PX4/uasys-px4-modules
-- Using C++03
-- Release build type: MinSizeRel
-- Adding UAVCAN STM32 platform driver
-- Adding ROMFS on px4fmu-v3
-- Nuttx build for px4fmu-v3 on m3 hardware, using nsh
-- Configuring done
-- Generating done
-- Build files have been written to: /Users/kabir/Development/PX4/Firmware/build_px4fmu-v3_default
[12/766] Generating ../../../../parameters.xml
FAILED: parameters.xml
cd /Users/kabir/Development/PX4/Firmware/build_px4fmu-v3_default && /usr/local/bin/python /Users/kabir/Development/PX4/Firmware/Tools/px_process_params.py -s /Users/kabir/Development/PX4/Firmware/src/drivers/airspeed /Users/kabir/Development/PX4/Firmware/src/drivers/blinkm /Users/kabir/Development/PX4/Firmware/src/drivers/bmi160 /Users/kabir/Development/PX4/Firmware/src/drivers/bmp280 /Users/kabir/Development/PX4/Firmware/src/drivers/boards/px4fmu-v2 /Users/kabir/Development/PX4/Firmware/src/drivers/bst /Users/kabir/Development/PX4/Firmware/src/drivers/camera_trigger /Users/kabir/Development/PX4/Firmware/src/drivers/device /Users/kabir/Development/PX4/Firmware/src/drivers/ets_airspeed /Users/kabir/Development/PX4/Firmware/src/drivers/frsky_telemetry /Users/kabir/Development/PX4/Firmware/src/drivers/gps /Users/kabir/Development/PX4/Firmware/src/drivers/hmc5883 /Users/kabir/Development/PX4/Firmware/src/drivers/hott /Users/kabir/Development/PX4/Firmware/src/drivers/hott/hott_sensors /Users/kabir/Development/PX4/Firmware/src/drivers/hott/hott_telemetry /Users/kabir/Development/PX4/Firmware/src/drivers/iridiumsbd /Users/kabir/Development/PX4/Firmware/src/drivers/l3gd20 /Users/kabir/Development/PX4/Firmware/src/drivers/led /Users/kabir/Development/PX4/Firmware/src/drivers/lis3mdl /Users/kabir/Development/PX4/Firmware/src/drivers/ll40ls /Users/kabir/Development/PX4/Firmware/src/drivers/lsm303d /Users/kabir/Development/PX4/Firmware/src/drivers/mb12xx /Users/kabir/Development/PX4/Firmware/src/drivers/meas_airspeed /Users/kabir/Development/PX4/Firmware/src/drivers/mkblctrl /Users/kabir/Development/PX4/Firmware/src/drivers/mpu6000 /Users/kabir/Development/PX4/Firmware/src/drivers/mpu9250 /Users/kabir/Development/PX4/Firmware/src/drivers/ms5611 /Users/kabir/Development/PX4/Firmware/src/drivers/oreoled /Users/kabir/Development/PX4/Firmware/src/drivers/pwm_input /Users/kabir/Development/PX4/Firmware/src/drivers/pwm_out_sim /Users/kabir/Development/PX4/Firmware/src/drivers/px4flow /Users/kabir/Development/PX4/Firmware/src/drivers/px4fmu /Users/kabir/Development/PX4/Firmware/src/drivers/px4io /Users/kabir/Development/PX4/Firmware/src/drivers/rgbled /Users/kabir/Development/PX4/Firmware/src/drivers/sf0x /Users/kabir/Development/PX4/Firmware/src/drivers/sf1xx /Users/kabir/Development/PX4/Firmware/src/drivers/snapdragon_rc_pwm /Users/kabir/Development/PX4/Firmware/src/drivers/srf02 /Users/kabir/Development/PX4/Firmware/src/drivers/stm32 /Users/kabir/Development/PX4/Firmware/src/drivers/stm32/adc /Users/kabir/Development/PX4/Firmware/src/drivers/stm32/tone_alarm /Users/kabir/Development/PX4/Firmware/src/drivers/tap_esc /Users/kabir/Development/PX4/Firmware/src/drivers/trone /Users/kabir/Development/PX4/Firmware/src/drivers/vmount /Users/kabir/Development/PX4/Firmware/src/modules/sensors /Users/kabir/Development/PX4/Firmware/src/systemcmds/bl_update /Users/kabir/Development/PX4/Firmware/src/systemcmds/config /Users/kabir/Development/PX4/Firmware/src/systemcmds/dumpfile /Users/kabir/Development/PX4/Firmware/src/systemcmds/esc_calib /Users/kabir/Development/PX4/Firmware/src/systemcmds/hardfault_log /Users/kabir/Development/PX4/Firmware/src/systemcmds/led_control /Users/kabir/Development/PX4/Firmware/src/systemcmds/mixer /Users/kabir/Development/PX4/Firmware/src/systemcmds/motor_ramp /Users/kabir/Development/PX4/Firmware/src/systemcmds/mtd /Users/kabir/Development/PX4/Firmware/src/systemcmds/nshterm /Users/kabir/Development/PX4/Firmware/src/systemcmds/param /Users/kabir/Development/PX4/Firmware/src/systemcmds/perf /Users/kabir/Development/PX4/Firmware/src/systemcmds/pwm /Users/kabir/Development/PX4/Firmware/src/systemcmds/reboot /Users/kabir/Development/PX4/Firmware/src/systemcmds/sd_bench /Users/kabir/Development/PX4/Firmware/src/systemcmds/top /Users/kabir/Development/PX4/Firmware/src/systemcmds/topic_listener /Users/kabir/Development/PX4/Firmware/src/systemcmds/ver /Users/kabir/Development/PX4/Firmware/src/drivers/sf0x/sf0x_tests /Users/kabir/Development/PX4/Firmware/src/drivers/test_ppm /Users/kabir/Development/PX4/Firmware/src/modules/commander/commander_tests /Users/kabir/Development/PX4/Firmware/src/lib/controllib/controllib_test /Users/kabir/Development/PX4/Firmware/src/modules/mavlink/mavlink_tests /Users/kabir/Development/PX4/Firmware/src/modules/mc_pos_control/mc_pos_control_tests /Users/kabir/Development/PX4/Firmware/src/modules/unit_test /Users/kabir/Development/PX4/Firmware/src/modules/uORB/uORB_tests /Users/kabir/Development/PX4/Firmware/src/systemcmds/tests /Users/kabir/Development/PX4/Firmware/src/modules/commander /Users/kabir/Development/PX4/Firmware/src/modules/events /Users/kabir/Development/PX4/Firmware/src/modules/gpio_led /Users/kabir/Development/PX4/Firmware/src/modules/land_detector /Users/kabir/Development/PX4/Firmware/src/modules/load_mon /Users/kabir/Development/PX4/Firmware/src/modules/mavlink /Users/kabir/Development/PX4/Firmware/src/modules/navigator /Users/kabir/Development/PX4/Firmware/src/modules/uavcan /Users/kabir/Development/PX4/Firmware/src/modules/camera_feedback /Users/kabir/Development/PX4/Firmware/src/modules/attitude_estimator_q /Users/kabir/Development/PX4/Firmware/src/modules/ekf2 /Users/kabir/Development/PX4/Firmware/src/modules/local_position_estimator /Users/kabir/Development/PX4/Firmware/src/modules/position_estimator_inav /Users/kabir/Development/PX4/Firmware/src/modules/fw_att_control /Users/kabir/Development/PX4/Firmware/src/modules/fw_pos_control_l1 /Users/kabir/Development/PX4/Firmware/src/modules/gnd_att_control /Users/kabir/Development/PX4/Firmware/src/modules/gnd_pos_control /Users/kabir/Development/PX4/Firmware/src/modules/mc_att_control /Users/kabir/Development/PX4/Firmware/src/modules/mc_pos_control /Users/kabir/Development/PX4/Firmware/src/modules/vtol_att_control /Users/kabir/Development/PX4/Firmware/src/modules/logger /Users/kabir/Development/PX4/Firmware/src/modules/sdlog2 /Users/kabir/Development/PX4/Firmware/src/modules/dataman /Users/kabir/Development/PX4/Firmware/src/modules/systemlib/param /Users/kabir/Development/PX4/Firmware/src/modules/systemlib /Users/kabir/Development/PX4/Firmware/src/modules/systemlib/mixer /Users/kabir/Development/PX4/Firmware/src/modules/uORB /Users/kabir/Development/PX4/Firmware/src/lib/controllib /Users/kabir/Development/PX4/Firmware/src/lib/conversion /Users/kabir/Development/PX4/Firmware/src/lib/DriverFramework/framework /Users/kabir/Development/PX4/Firmware/src/lib/ecl /Users/kabir/Development/PX4/Firmware/src/lib/external_lgpl /Users/kabir/Development/PX4/Firmware/src/lib/geo /Users/kabir/Development/PX4/Firmware/src/lib/geo_lookup /Users/kabir/Development/PX4/Firmware/src/lib/launchdetection /Users/kabir/Development/PX4/Firmware/src/lib/led /Users/kabir/Development/PX4/Firmware/src/lib/mathlib /Users/kabir/Development/PX4/Firmware/src/lib/mathlib/math/filter /Users/kabir/Development/PX4/Firmware/src/lib/runway_takeoff /Users/kabir/Development/PX4/Firmware/src/lib/tailsitter_recovery /Users/kabir/Development/PX4/Firmware/src/lib/terrain_estimation /Users/kabir/Development/PX4/Firmware/src/lib/version /Users/kabir/Development/PX4/Firmware/src/platforms/common /Users/kabir/Development/PX4/Firmware/src/platforms/nuttx /Users/kabir/Development/PX4/Firmware/src/platforms/nuttx/px4_layer /Users/kabir/Development/PX4/Firmware/src/modules/bottle_drop /Users/kabir/Development/PX4/Firmware/src/examples/rover_steering_control /Users/kabir/Development/PX4/Firmware/src/examples/segway /Users/kabir/Development/PX4/Firmware/src/examples/px4_simple_app /Users/kabir/Development/PX4/Firmware/src/examples/px4_daemon_app /Users/kabir/Development/PX4/Firmware/src/examples/px4_mavlink_debug /Users/kabir/Development/PX4/Firmware/src/examples/fixedwing_control /Users/kabir/Development/PX4/Firmware/src/examples/hwtest /Users/kabir/Development/PX4/Firmware/src/examples/ekf_att_pos_estimator /Users/kabir/Development/PX4/Firmware/src//Users/kabir/Development/PX4/uasys-px4-modules/src/drivers/camera_trigger /Users/kabir/Development/PX4/uasys-px4-modules --board CONFIG_ARCH_px4fmu-v3 --xml --inject-xml --overrides {}
Traceback (most recent call last):
  File "/Users/kabir/Development/PX4/Firmware/Tools/px_process_params.py", line 199, in <module>
    main()
  File "/Users/kabir/Development/PX4/Firmware/Tools/px_process_params.py", line 145, in main
    if not scanner.ScanDir(args.src_path, parser):
  File "/Users/kabir/Development/PX4/Firmware/Tools/px4params/srcscanner.py", line 20, in ScanDir
    for filename in os.listdir(srcdir):
OSError: [Errno 2] No such file or directory: '/Users/kabir/Development/PX4/Firmware/src//Users/kabir/Development/PX4/uasys-px4-modules/src/drivers/camera_trigger'
[14/766] Copying NuttX for px4fmu-v3 with nsh
ninja: build stopped: subcommand failed.
make: *** [px4fmu-v3_default] Error 1
Mohammeds-MacBook-Pro:Firmware kabir$

Sorry, should be quick to fix though.
Can you roughly list the layout of the out of tree portion?

Yeah, so the root directory is /Users/kabir/Development/PX4/uasys-px4-modules. It contains a directory src, which contains a CMakeLists.txt (see below) and a drivers directory.
I'm just trying to build the unmodified camera trigger driver from Firmware. It is located at /Users/kabir/Development/PX4/uasys-px4-modules/src/drivers/camera_trigger.
CMakeLists.txt :
set(config_module_list_external
    drivers/camera_trigger
    PARENT_SCOPE
    )

Fixed by Beat.


Interaction Templates

This page offers precious little other than "you need to set up interaction templates".  Is there a link to a page outline how to correctly set the up?  There's a bunch of fields (Word Template Code, Wizard Action, Correspondence type, Attachment etc) that are available but no help on these.  OOB we have an interaction group (that's not mentioned in the help system) associated with a interaction template, in my case EMAIL/EMAIL.  If I try and use the interaction it fails because it says I must have an attachment (where's that set?)  Functionally I would want to 'attach' the email - not some pre-built attachment...
There's not a lot of detail here and a link to the setup page or instructions on setting up interactions would be helpful.  I think the only link takes you to setting up contacts but then there's no link to interactions...

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

ID: 34006406-dbcf-6317-16f0-fbf6e5482609
Version Independent ID: 79ef7f6c-4407-64cb-eabe-92addde16443
Content: Manage Interactions With Your Contacts - Business Central
Content Source: business-central/marketing-interactions.md
Service: dynamics365-business-central
GitHub Login: @jswymer
Microsoft Alias: jswymer

Thank you.
Please see the link below:
Table Delivery Sorter | Microsoft Learn
Base-application->CRM->Under CRM
CodeUnit Word Template | Microsoft Learn
Interaction Templates:
Manage Interactions With Your Contacts - Business Central | Microsoft Learn
Attachments for Interactions - Business Central | Microsoft Learn


Must remove square brackets from IPv6 addresses when using match_hostname

Spotted in OpenStack. Introduced by my fix #708.
Apparently, while httplib itself doesn't care about the square brackets, the match_hostname function needs them gone. I suggest we move the stripping down into our ssl.py module.

---
Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/29146492-must-remove-square-brackets-from-ipv6-addresses-when-using-match_hostname?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F192525&utm_medium=issues&utm_source=github).

This is the openstack bug, FYI: https://bugs.launchpad.net/nova/+bug/1526413

@Lukasa seems to be working on this so I'm labelling it in progress and assigning him :-P

Ok, fix has landed.


"Roadmap" is not showing links

Describe the bug
It fails to load data from API:
Access to fetch at 'https://api.volta.net/repositories/nuxt-hub/core/issues?page=1' from origin 'https://volta.net' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

Steps to reproduce
Steps to reproduce the behavior:

Go to dahsboard
Click 'Roadmap'

Expected behavior
See the roadmap, not error

Do you still have it?

Works now. Thanks


Switched to dot-writer library

Thanks for your contribution @DrGabble ! I'll have a look at it.

@DrGabble a little update... I've created a new PR here #17 which aims at fixing some other unrelated issues. Ideally I'd like to merge your PR but the target branch is out of sync.

Closing as mentioned in #17.


Change Folder Structure

lnd, cln etc should have it's own subfolder not be mingeled in host
~/GitHub/regtest/data$ ls -la
total 24
drwxrwxr-x 6 kilrau kilrau 4096 Jul 26 17:19 .
drwxrwxr-x 5 kilrau kilrau 4096 Jul 26 17:05 ..
drwxrwxr-x 2 kilrau kilrau 4096 Jul 26 17:05 boltz
drwxrwxr-x 2 kilrau kilrau 4096 Jul 26 17:05 boltz-client
drwxrwxr-x 2 kilrau kilrau 4096 Jul 26 17:05 elements
drwxr-xr-x 2 root   root   4096 Jul 26 17:20 host

Another reason is to keep the orignal naming of the certs: 2024-07-26 17:45:06.873 [FATAL] Could not start Boltz server: could not read CLN root certificate /home/kilrau/GitHub/regtest/regtest/ca.pem: open /home/kilrau/GitHub/regtest/regtest/ca.pem: no such file or directory

I am not sure if we can make lightning-rpc work without mounts and sudo. Ideas? @maybeast @jackstar12


I cannot access isDebuggable in dynamic feature modules when i upgrade agp and gradle to 7.0

I cannot access isDebuggable in dynamic feature modules when i upgrade agp and gradle to 7.0
android {
buildTypes {
getByName("release") {
if (DEBUG_ENABLE) {
isDebuggable = true           // right in app/build.gradle but error in dynamic-feature/build.gradle
}
}
}
}

Thank you for your interest in Gradle!
This is an issue with the Android Gradle Plugin which is developed by Google and cannot be addressed in the core of the Gradle Build Tool.
Please open such Android-related issues on the Android Issue Tracker at https://source.android.com/source/report-bugs

sadly, not possible to create in this component :(

if in case anyone in the future wants to setup the isDebuggable using Kotlin DSL, we need to use BuildType instead of DynamicFeatureBuildType


Handle SAS credential updates during message retries

fixes https://github.com/Azure/azure-sdk-for-net/issues/32514
fixes https://github.com/Azure/azure-sdk-for-net/issues/31442

API change check
API changes are not detected in this pull request.


Asp.net core 2.1 to Asp.net 3.0 upgrade

I have a web api application which is working fine in 2.1. I am using same application to host in IIS on windows and without IIS on linux. Now I am trying to upgrade the application.
I have upgraded the nuget packages and project version successfully.Now when trying to debug app looks there is some problem in my configuration startup class which is as below
public static void Main(string[] args)
{

            StartupShutdownHandler.BuildWebHost(args).Build().Run();
}

namespace MyApp
{
    public class StartupShutdownHandler
    {

        public static IWebHostBuilder BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args)
               .UseStartup<StartupShutdownHandler>();

        private static readonly ILog Logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
        private const string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";

        public StartupShutdownHandler(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            //services.AddMvc(options => { options.RespectBrowserAcceptHeader = true; }).AddXmlSerializerFormatters().AddXmlDataContractSerializerFormatters(); //this is changed in 3.0
            services.AddMvc(options => { options.RespectBrowserAcceptHeader = true; }).AddXmlSerializerFormatters().AddXmlDataContractSerializerFormatters().SetCompatibilityVersion(Microsoft.AspNetCore.Mvc.CompatibilityVersion.Version_3_0);

            CorsRelatedPolicyAddition(services);
        }

        private void CorsRelatedPolicyAddition(IServiceCollection services)
        {
            var lstofCors = ConfigurationHandler.GetSection<List<string>>(StringConstants.AppSettingsKeys.CorsWhitelistedUrl);
            if (lstofCors != null && lstofCors.Count > 0 && lstofCors.Any(h => !string.IsNullOrWhiteSpace(h)))
            {
                services.AddCors(options =>
                {
                    options.AddPolicy(MyAllowSpecificOrigins, builder => { builder.WithOrigins(lstofCors.ToArray()).AllowAnyMethod().AllowAnyHeader(); });
                });

            }
        }

        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IHostApplicationLifetime applicationLifetime)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }

            app.UseCors(MyAllowSpecificOrigins);
            //app.UseMvc(); //this is changed in 3.0
            applicationLifetime.ApplicationStarted.Register(StartedApplication);
            applicationLifetime.ApplicationStopping.Register(OnShutdown);
        }

        private void OnShutdown()
        {
             Logger.Debug("Application Shutdown");
        }

        private void StartedApplication()
        {
            Logger.Debug("Application Started");
        }
    }
}

I have tried chagned some lines which are commented as //this is changed in 3.0 but it doesn't work. Please identify the problem

What are the symptoms you're seeing?

Have tried it and wasn't succeeding initially. Eventually able to workout with following settings.
namespace MyApp.Interfaces
{
    public class StartupShutdownHandler
    {

        public static IWebHostBuilder BuildWebHost(string[] args) => WebHost.CreateDefaultBuilder(args).
            ConfigureKestrel(serverOptions =>{}).UseIISIntegration()
            .UseStartup<StartupShutdownHandler>();

        private static readonly ILog Logger = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
        private const string MyAllowSpecificOrigins = "_myAllowSpecificOrigins";

        public StartupShutdownHandler(IConfiguration configuration)
        {
            Configuration = configuration;
        }

        public IConfiguration Configuration { get; }

        // This method gets called by the runtime. Use this method to add services to the container.
        public void ConfigureServices(IServiceCollection services)
        {
            services.AddSingleton<IHttpContextAccessor, HttpContextAccessor>();
            services.AddControllers();
            CorsRelatedPolicyAddition(services);
        }

        private void CorsRelatedPolicyAddition(IServiceCollection services)
        {
            var lstofCors = ConfigurationHandler.GetSection<List<string>>(StringConstants.AppSettingsKeys.CorsWhitelistedUrl);
            if (lstofCors != null && lstofCors.Count > 0 && lstofCors.Any(h => !string.IsNullOrWhiteSpace(h)))
            {
                services.AddCors(options =>
                {
                    options.AddPolicy(MyAllowSpecificOrigins, builder => { builder.WithOrigins(lstofCors.ToArray()).AllowAnyMethod().AllowAnyHeader(); });
                });

            }
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env, IHostApplicationLifetime applicationLifetime)
        {
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            app.UseRouting();
            app.UseCors(MyAllowSpecificOrigins);
            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllerRoute("default", "{controller=Home}/{action=Index}/{id?}");
            });
            applicationLifetime.ApplicationStarted.Register(StartedApplication);
            applicationLifetime.ApplicationStopping.Register(OnShutdown);
        }

        private void OnShutdown()
        {
             Logger.Debug("Application Ended");
        }

        private void StartedApplication()
        {
            Logger.Debug("Application Started");
        }
    }
}


[Compatibility][Crash] Mod is not compatible with passive skill trees as of newest update

Forge 47.3.0
Minecraft Java 1.20.1
Apotheosis 1.20.1-7.3.5
Passive Skill Tree 1.20.1-BETA-0.6.13a-all
In case of any more info needed please comment, I am willing to help!

This can only be resolved by PST.


Copied safewalk work

This change is

Reviewed 11 of 11 files at r1.
Review status: all files reviewed at latest revision, 17 unresolved discussions.

app/src/main/AndroidManifest.xml, line 879 at r1 (raw file):

			<meta-data
				android:name="description"
				android:value="It's not safe to go alone. Take this!" />

Update

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 18 at r1 (raw file):

public class SafeWalkMainActivity extends ByuActivity {
	private static final Uri POPO = Uri.fromParts("tel", "422-2222", null);

Update name and phone number

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 25 at r1 (raw file):

		setContentView(R.layout.safewalk_activity_main);

		String phoneNumber = "123-456-7890";

Update

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 28 at r1 (raw file):

		String infoText = getString(R.string.safewalk_info, phoneNumber);
		TextView info = (TextView) findViewById(R.id.safewalk_info);
		info.setText(Build.VERSION.SDK_INT >= Build.VERSION_CODES.N ? Html.fromHtml(infoText, Html.FROM_HTML_MODE_LEGACY) : Html.fromHtml(infoText));

Use utils

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 32 at r1 (raw file):

		findViewById(R.id.understand).setOnClickListener(v -> startActivity(new Intent(this, SafeWalkMapActivity.class)));
		findViewById(R.id.emergency).setOnClickListener(v -> startActivity(new Intent(Intent.ACTION_DIAL, POPO)));

use displayCallDialog

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):

 */

public class SafeWalkMapActivity extends ByuActivity {

Should this be a map activity?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 21 at r1 (raw file):

		setContentView(R.layout.safewalk_activity_map);
		findViewById(R.id.confirm).setOnClickListener(v -> {
			LatLng markerLocation = ((SafeWalkMapFragment) getFragmentManager().findFragmentByTag(getString(R.string.safewalkId))).getMarkerLocation();

Is this the right way to get it?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapFragment.java, line 21 at r1 (raw file):

		googleMap.setOnMapClickListener(latLng -> {
			if (marker == null) {
				marker = addMarker(new MarkerOptions().position(latLng).draggable(true));

Does it need to be draggable?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 25 at r1 (raw file):

		setContentView(R.layout.safewalk_activity_walk);

		api = ByuApiGenerator.createApi(this, new SafeWalkClient());

Don't use api generator

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 37 at r1 (raw file):

	private void imSafe() {
		// TODO: 4/7/17 Do this

Do it

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 42 at r1 (raw file):

	@Override
	protected boolean displayUp() {
		return false;

Is this still what we want?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 46 at r1 (raw file):

	private void emergency() {
		// TODO: 3/31/17 do this

Do it

app/src/main/java/edu/byu/suite/features/safewalk/service/SafeWalkClient.java, line 13 at r1 (raw file):

	@Override
	public String getBaseUrl() {
		return null;

Fill in

app/src/main/java/edu/byu/suite/features/safewalk/service/SafeWalkClient.java, line 27 at r1 (raw file):

	public interface Api {

Implement

app/src/main/res/layout/safewalk_activity_main.xml, line 2 at r1 (raw file):

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

Double check

app/src/main/res/layout/safewalk_activity_map.xml, line 2 at r1 (raw file):

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"

Double check

app/src/main/res/layout/safewalk_activity_walk.xml, line 2 at r1 (raw file):

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

Use constraint layout?

Comments from Reviewable

Reviewed 1 of 1 files at r2.
Review status: all files reviewed at latest revision, 17 unresolved discussions.

Comments from Reviewable

Reviewed 3 of 3 files at r3.
Review status: all files reviewed at latest revision, 17 unresolved discussions.

Comments from Reviewable

Reviewed 2 of 2 files at r4.
Review status: all files reviewed at latest revision, 17 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r5.
Review status: all files reviewed at latest revision, 17 unresolved discussions.

Comments from Reviewable

Reviewed 14 of 14 files at r6.
Review status: all files reviewed at latest revision, 11 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 18 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Update name and phone number

Still check the phone number

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 26 at r6 (raw file):

		setContentView(R.layout.safewalk_activity_main);

		AccountInformation accountInformation = AccountInformation.fetch(this, AccountResolver.getAccount(this));

Do I need to do a sync before this line so that new users won't see "null"?

support/src/main/java/edu/byu/support/fragment/ByuMapFragment.java, line 39 at r6 (raw file):

	private static final String TAG = ByuMapFragment.class.getSimpleName();

	private static final int MAP_PADDING = 100;

Can I use a higher value?

support/src/main/java/edu/byu/support/login/account/AccountInformationWrapper.java, line 10 at r6 (raw file):

public class AccountInformationWrapper {
	@SerializedName("Person Summary Service")
	public PersonSummaryService personSummaryService;

Can I get rid of the public stuff?

Comments from Reviewable

Reviewed 1 of 14 files at r6, 2 of 2 files at r7.
Review status: all files reviewed at latest revision, 11 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r8.
Review status: all files reviewed at latest revision, 11 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r9.
Review status: all files reviewed at latest revision, 11 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 12 unresolved discussions.

app/src/main/res/values/strings.xml, line 275 at r9 (raw file):

PLEASE NOTE:

In the event that the police need to contact you, they will call you at %s, the emergency number you
		provided for BYU. Please update it here if needed.

While SafeWalk
		is in use, please DO NOT kill the app, or we cannot track you, and the police will assume an emergency has occurred.

As soon as you select

Replace "kill" with "terminate"

Comments from Reviewable

Review status: 12 of 21 files reviewed at latest revision, 12 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Should this be a map activity?

I changed this to a LocationActivity.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 21 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Is this the right way to get it?

It seems to be.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 37 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Do it

Done

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 46 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Do it

Done.

app/src/main/java/edu/byu/suite/features/safewalk/service/SafeWalkClient.java, line 27 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Implement

Done.

Comments from Reviewable

Review status: 12 of 21 files reviewed at latest revision, 12 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 25 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Don't use api generator

Done.

app/src/main/res/values/strings.xml, line 275 at r9 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Replace "kill" with "terminate"

Done.

Comments from Reviewable

Reviewed 4 of 9 files at r10, 6 of 6 files at r11.
Review status: all files reviewed at latest revision, 13 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 35 at r11 (raw file):

		findViewById(R.id.understand).setOnClickListener(view -> {
            Intent intent = SafeWalkMapActivity.createIntent(view.getContext(), phoneNumber);

Go ahead and inline this. Why did we change this to view.getContext()?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):
Previously, geogor37 wrote…
I changed this to a LocationActivity.

Where? It doesn't look changed to me... It still looks like it extends ByuActivity

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 21 at r1 (raw file):
Previously, geogor37 wrote…
It seems to be.

We should probably rename that string resource to something like safewalkMapFragmentTag rather than safewalkId

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 65 at r11 (raw file):

	public void startWalk(){
		new AlertDialog.Builder(this).setMessage(R.string.begin_session)
				.setPositiveButton("Begin Session", (dialog, which) -> startActivity(SafeWalkWalkActivity.createIntent(this.getBaseContext(), sessionId)))

Why getBaseContext? Why not just SafeWalkMapActivity.this?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):

	}

	public static Intent createIntent(Context context, String phoneNumber) {

Explain to me why you like this approach to creating intents. We haven't done it in the project before, but if you can convince me that it is better, I am willing to make the change. :)

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 104 at r11 (raw file):

			@Override
			public void onSuccess(Call<ResponseBody> call, Response<ResponseBody> response) {
				// What should happen here?

Call the police immediately

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 110 at r11 (raw file):

			public void onFailure(Call<ResponseBody> call, ByuError byuError) {
				showErrorDialog(byuError.getReadableMessage());
				// Show the call police dialog perhaps?

Yes. Call the police no matter what

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 127 at r11 (raw file):

	}

	public static Intent createIntent (Context context, String sessionId) {

remove extra space (CMD-OPT-L will format the whole file)

app/src/main/java/edu/byu/suite/features/safewalk/model/IdWrapper.java, line 1 at r11 (raw file):

package edu.byu.suite.features.safewalk.model;

I think all of these model classes should be able to be merged into one SafeWalkInfo object

app/src/main/java/edu/byu/suite/features/safewalk/service/SafeWalkClient.java, line 38 at r11 (raw file):

	public interface Api {
		@POST("v1")

Did we find out last week that we needed the "/" after v1? Or does it work either way?

Comments from Reviewable

Review status: all files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 35 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Go ahead and inline this. Why did we change this to view.getContext()?

I don't remember, I don't think there was a reason I wrote it that way, so I'll change it back.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Where? It doesn't look changed to me... It still looks like it extends ByuActivity

My bad, I was thinking about the SafeWalkWalkActivity.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 21 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
We should probably rename that string resource to something like safewalkMapFragmentTag rather than safewalkId

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 65 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Why getBaseContext? Why not just SafeWalkMapActivity.this?

I don't think there was a specific reason why I did that here either.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Explain to me why you like this approach to creating intents. We haven't done it in the project before, but if you can convince me that it is better, I am willing to make the change. :)

I don't consider myself knowledgeable enough to say definitively that this is a better approach, but from what I remember of the process of learning Android this approach was used because it ensures that everything having to do with the Activity being created is a part of that Activity's class.  Besides cohesion I don't know if there are really any other benefits to it though.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 127 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
remove extra space (CMD-OPT-L will format the whole file)

Done.

app/src/main/java/edu/byu/suite/features/safewalk/service/SafeWalkClient.java, line 38 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Did we find out last week that we needed the "/" after v1? Or does it work either way?

Nope, it works like this.

Comments from Reviewable

Review status: all files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 26 at r6 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Do I need to do a sync before this line so that new users won't see "null"?

Done.

Comments from Reviewable

Review status: all files reviewed at latest revision, 16 unresolved discussions.

a discussion (no related file):
Add phone number validation

Comments from Reviewable

Reviewed 8 of 8 files at r12.
Review status: all files reviewed at latest revision, 15 unresolved discussions.

app/src/main/AndroidManifest.xml, line 890 at r12 (raw file):

			<meta-data
				android:name="featureId"
				android:value="@string/safewalkMapFragmentTag" />

Uh oh... I don't think you meant to push this... We shouldn't have changed the feature id. Also, the feature id should be in the featureIds file, while the fragment tag can probably be in the strings file

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 27 at r12 (raw file):

	@Override
	protected void onCreate(Bundle savedInstanceState) {
        showProgressDialog();

Move this below the super and setContent calls. Those should be at the very top of every onCreate

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 31 at r12 (raw file):

		setContentView(R.layout.safewalk_activity_main);

        AccountInformation.sync(this, AccountManager.get(this).getAccountsByType(AuthConstants.BYU_ACCOUNT_TYPE)[0], result -> {

Ouch... Is this really the only way to synch the account? I don't like the [0] unless we need it

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
My bad, I was thinking about the SafeWalkWalkActivity.

So this one doesn't need to be a ByuMapActivity? Does that file even exist? I always get iOS and Android mixed up...

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
I don't consider myself knowledgeable enough to say definitively that this is a better approach, but from what I remember of the process of learning Android this approach was used because it ensures that everything having to do with the Activity being created is a part of that Activity's class.  Besides cohesion I don't know if there are really any other benefits to it though.

So my only reason against it would times when there are multiple ways to get into the class. How would you handle that here? Multiple methods? Methods with optional parameters? Something I can't think of?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 105 at r12 (raw file):

            public void onSuccess(Call<ResponseBody> call, Response<ResponseBody> response) {
                // What should happen here?
                showDialDialog(POLICE_PHONE_NUMBER);

calling the police should be done outside of the callbacks. We don't need to wait for the response to call the police

support/src/main/java/edu/byu/support/fragment/ByuMapFragment.java, line 39 at r6 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can I use a higher value?

Did we not change this back?

support/src/main/res/values/feature_ids.xml, line 38 at r12 (raw file):

	<string name="printersId">Printers</string>
	<string name="restroomsId">restroom</string>
	<string name="safewalkMapFragmentTag">safewalk</string>

This should be changed back to safewalkId

Comments from Reviewable

Review status: all files reviewed at latest revision, 16 unresolved discussions.

a discussion (no related file):
Previously, romrell4 (Eric Romrell) wrote…
Add phone number validation

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapFragment.java, line 21 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Does it need to be draggable?

From what I could tell, making it draggable wasn't actually doing anything, so I removed it.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 104 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Call the police immediately

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 110 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Yes. Call the police no matter what

Done.

app/src/main/java/edu/byu/suite/features/safewalk/model/IdWrapper.java, line 1 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I think all of these model classes should be able to be merged into one SafeWalkInfo object

Done.

support/src/main/java/edu/byu/support/fragment/ByuMapFragment.java, line 39 at r6 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can I use a higher value?

We decided this was the best option.

support/src/main/java/edu/byu/support/login/account/AccountInformationWrapper.java, line 10 at r6 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can I get rid of the public stuff?

I switched the inner classes to package-private.  Is that alright or should I make them their own classes?

Comments from Reviewable

Review status: 11 of 20 files reviewed at latest revision, 15 unresolved discussions.

app/src/main/AndroidManifest.xml, line 890 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Uh oh... I don't think you meant to push this... We shouldn't have changed the feature id. Also, the feature id should be in the featureIds file, while the fragment tag can probably be in the strings file

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 27 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Move this below the super and setContent calls. Those should be at the very top of every onCreate

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 31 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Ouch... Is this really the only way to synch the account? I don't like the [0] unless we need it

From what I could tell the only way to get the account is with the getAccountsByType function, which returns an array of accounts.  I looked around in the app because I was hoping there was a better way to do it as well, and what I found is that it's only possible for one account with BYU_ACCOUNT_TYPE to exist at a time, which is why I went ahead and wrote it this way.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 15 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
So this one doesn't need to be a ByuMapActivity? Does that file even exist? I always get iOS and Android mixed up...

No that file doesn't exist; there is a ByuMapFragment however, which is what the SafeWalkMapFragment extends.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
So my only reason against it would times when there are multiple ways to get into the class. How would you handle that here? Multiple methods? Methods with optional parameters? Something I can't think of?

Using multiple methods has worked fine for me in the past.  Although my past projects are admittedly much smaller than what we're working on here.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 105 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
calling the police should be done outside of the callbacks. We don't need to wait for the response to call the police

Done.

support/src/main/res/values/feature_ids.xml, line 38 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
This should be changed back to safewalkId

Done.

Comments from Reviewable

Reviewed 9 of 12 files at r13.
Review status: 19 of 20 files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 31 at r12 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
From what I could tell the only way to get the account is with the getAccountsByType function, which returns an array of accounts.  I looked around in the app because I was hoping there was a better way to do it as well, and what I found is that it's only possible for one account with BYU_ACCOUNT_TYPE to exist at a time, which is why I went ahead and wrote it this way.

I think if you use this line AccountResolver.getAccount(this) it will already do that stuff for you. Easiest way to find how to use the sync function is just find other places that use it. See me if you have more questions

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 52 at r13 (raw file):

	public void iUnderstand() {
        if(checkPhoneNumber()) {

space after if. Do CMD-OPT-L to format the entire file

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 59 at r13 (raw file):

        else {
            //  Displays a dialog box prompting the user to enter in a 10 digit phone number.
            EditText editText = new EditText(this);

Make EditText use numeric keypad (rather than full keyboard)

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 60 at r13 (raw file):

            //  Displays a dialog box prompting the user to enter in a 10 digit phone number.
            EditText editText = new EditText(this);
            new AlertDialog.Builder(this).setMessage("The phone number we have on record is incompatible with the BYU Police calling service.  Please enter a ten digit phone number that we can use to reach you in an emergency.")

Compare this with what Erik has and come up with the best solution. Also, remove the double space after the sentence

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 61 at r13 (raw file):

            EditText editText = new EditText(this);
            new AlertDialog.Builder(this).setMessage("The phone number we have on record is incompatible with the BYU Police calling service.  Please enter a ten digit phone number that we can use to reach you in an emergency.")
                    .setView(editText)

Interesting... Is there no built in way to add a text view to an AlertDialog.Builder?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 62 at r13 (raw file):

            new AlertDialog.Builder(this).setMessage("The phone number we have on record is incompatible with the BYU Police calling service.  Please enter a ten digit phone number that we can use to reach you in an emergency.")
                    .setView(editText)
                    .setPositiveButton("OK", new DialogInterface.OnClickListener() {

Make Lambda

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 74 at r13 (raw file):

	public boolean checkPhoneNumber() {
        userPhoneNumber = userPhoneNumber.replaceAll("\\D+","");
        if(userPhoneNumber.length() == 10) {

format

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 74 at r13 (raw file):

	public boolean checkPhoneNumber() {
        userPhoneNumber = userPhoneNumber.replaceAll("\\D+","");
        if(userPhoneNumber.length() == 10) {

Replace with return userPhoneNumber.length() == 10

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 80 at r13 (raw file):

    }

    public void formatPhoneNumber() {

I don't think we're going to be doing this anymore. We're just going to pass in the 10 digit text

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
Using multiple methods has worked fine for me in the past.  Although my past projects are admittedly much smaller than what we're working on here.

The way we've done it in the app so far is to not have a public static function, but instead, just make the TAGs public static. Let's use that for now. We can address this later if we feel that there will be a greater benefit in another feature

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 67 at r13 (raw file):

    protected void onLocationReceived() {
        SafeWalkInfo SafeWalkInfo = new SafeWalkInfo(Double.toString(currentLocation.getLatitude()), Double.toString(currentLocation.getLongitude()));
        enqueueCall(api.updateLocation(sessionId, SafeWalkInfo), new ByuCallback<ResponseBody>(this) {

Can you just pass in null for the callback? I don't know if it will work, but it might :)

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 11 at r13 (raw file):

    private String latitude;
    private String longitude;
    private String id;

Put this on top

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 36 at r13 (raw file):

    }

    public String getId() {

On top

Comments from Reviewable

Review status: 19 of 20 files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 31 at r12 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I think if you use this line AccountResolver.getAccount(this) it will already do that stuff for you. Easiest way to find how to use the sync function is just find other places that use it. See me if you have more questions

Yup that works.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 52 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
space after if. Do CMD-OPT-L to format the entire file

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 62 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Make Lambda

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 74 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Replace with return userPhoneNumber.length() == 10

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 67 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can you just pass in null for the callback? I don't know if it will work, but it might :)

That worked!

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 11 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Put this on top

Done.

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 36 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
On top

Done.

Comments from Reviewable

Review status: 19 of 20 files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 74 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
format

Done.

Comments from Reviewable

Reviewed 1 of 12 files at r13.
Review status: all files reviewed at latest revision, 15 unresolved discussions.

Comments from Reviewable

Review status: 15 of 20 files reviewed at latest revision, 15 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 59 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Make EditText use numeric keypad (rather than full keyboard)

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 60 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Compare this with what Erik has and come up with the best solution. Also, remove the double space after the sentence

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 61 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Interesting... Is there no built in way to add a text view to an AlertDialog.Builder?

For an EditText it looks like you have to do it either this way or by passing in an xml layout.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 80 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I don't think we're going to be doing this anymore. We're just going to pass in the 10 digit text

Roger that :)

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMapActivity.java, line 69 at r11 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
The way we've done it in the app so far is to not have a public static function, but instead, just make the TAGs public static. Let's use that for now. We can address this later if we feel that there will be a greater benefit in another feature

Sounds good!

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 67 at r13 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
That worked!

Actually turns out that this does not work at runtime; I take back my previous response.

Comments from Reviewable

Reviewed 5 of 5 files at r14.
Review status: all files reviewed at latest revision, 7 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 59 at r13 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
Done.

Can you add a hint text saying "Enter 10 digit phone number"?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 67 at r14 (raw file):

    public boolean checkPhoneNumber() {
        userPhoneNumber = userPhoneNumber.replaceAll("\\D+", "");

Comment about what this regex is doing. Also, why do you use the +? Does it give it better performance by grouping non digit values together?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 27 at r14 (raw file):

public class SafeWalkWalkActivity extends ByuLocationActivity {
    private static final String POLICE_PHONE_NUMBER = "(801) 422-2222";
    public static final String EXTRA_SESSION_ID = "sessionId";

Let's put the public ones on top. Here's the order we normally put instance variables:
public static final ...
private static final ...
public ...
private ...

Does that make sense?

Comments from Reviewable

Review status: 17 of 20 files reviewed at latest revision, 4 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 59 at r13 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Can you add a hint text saying "Enter 10 digit phone number"?

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 67 at r14 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Comment about what this regex is doing. Also, why do you use the +? Does it give it better performance by grouping non digit values together?

I thought it might, but I don't know for sure.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 27 at r14 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Let's put the public ones on top. Here's the order we normally put instance variables:
public static final ...
private static final ...
public ...
private ...

Does that make sense?

Done.

Comments from Reviewable

Reviewed 3 of 3 files at r15.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

Reviewed 1 of 1 files at r16.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

Reviewed 1 of 1 files at r17.
Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 280 at r17 (raw file):

		provided for BYU. Please update it here if needed.

While SafeWalk
		is in use, please DO NOT terminate the app, or we cannot track you, and the police will assume an emergency has occurred.

As soon as you select
		\"Emergency,\" please lock your phone.

BYUSA SafeWalk How-To video

Get actual video link

Comments from Reviewable

Reviewed 3 of 3 files at r18.
Review status: all files reviewed at latest revision, 6 unresolved discussions.

app/src/main/AndroidManifest.xml, line 10 at r18 (raw file):

	<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
	<uses-permission android:name="android.permission.CALL_PHONE" />

We don't want this permission added. Can you get rid of this?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 53 at r18 (raw file):

	@Override
	public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {

I wanted to avoid this... Any way we can do without permission?

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 121 at r18 (raw file):

	}

	@SuppressLint("NewApi")

I don't think we'll need this when we do DIAL

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 129 at r18 (raw file):

				@Override
				public void onSuccess(Call<ResponseBody> call, Response<ResponseBody> response) {
				}

It looks like you're using tabs. I can't remember if that's what everyone else is doing... If not, change your preferences. If so, CMD-OPT-L this whole file to use tabs

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 136 at r18 (raw file):

			});
		}
		if (ActivityCompat.checkSelfPermission(this, Manifest.permission.CALL_PHONE) != PackageManager.PERMISSION_GRANTED) {

Instead of CALL_PHONE, I think we can use DIAL_PHONE and not have to get the permission

Comments from Reviewable

Review status: all files reviewed at latest revision, 7 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):

	<string name="safewalk_info_html">

PLEASE NOTE:

In the event that the police need to contact you, they will call you at %s, the emergency number you
		provided for BYU. Please update it here if needed.

While SafeWalk

This URL will not update the correct phone number... Change the URL for updating phone number to whatever is easiest to explain

Comments from Reviewable

Reviewed 1 of 1 files at r19.
Review status: all files reviewed at latest revision, 7 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 7 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
This URL will not update the correct phone number... Change the URL for updating phone number to whatever is easiest to explain

I think we decided on /address. See if that one works

Comments from Reviewable

Review status: 18 of 20 files reviewed at latest revision, 7 unresolved discussions.

app/src/main/AndroidManifest.xml, line 10 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
We don't want this permission added. Can you get rid of this?

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 53 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I wanted to avoid this... Any way we can do without permission?

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 121 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I don't think we'll need this when we do DIAL

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 129 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
It looks like you're using tabs. I can't remember if that's what everyone else is doing... If not, change your preferences. If so, CMD-OPT-L this whole file to use tabs

Yeah I think we decided that the tabs are what we wanted.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkWalkActivity.java, line 136 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Instead of CALL_PHONE, I think we can use DIAL_PHONE and not have to get the permission

Done.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
I think we decided on /address. See if that one works

I'm not sure that I follow you on this one... What needs to change to /address?

Comments from Reviewable

Reviewed 2 of 2 files at r20.
Review status: all files reviewed at latest revision, 3 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
I'm not sure that I follow you on this one... What needs to change to /address?

Do it now that you know :)

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Do it now that you know :)

Done.  How does that message look to you?

Comments from Reviewable

Reviewed 1 of 1 files at r21.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
Done.  How does that message look to you?

Let's go for "Please update the phone number listed on this page under "Mailing Address" if needed." (make this page be the link)

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Let's go for "Please update the phone number listed on this page under "Mailing Address" if needed." (make this page be the link)

Done.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Make page also include the link. Also, slack Erik the changes and tell him that I said to do that in iOS

Sorry- that was cryptic. Make "this page" be the link

Comments from Reviewable

Review status: 19 of 20 files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Sorry- that was cryptic. Make "this page" be the link

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r23.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, geogor37 (Geoff Gorham) wrote…
Done.

Have you sent the slack message to Erik?

Comments from Reviewable

Reviewed 3 of 3 files at r24.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

app/src/main/res/layout/safewalk_activity_main.xml, line 31 at r24 (raw file):

		app:layout_constraintRight_toRightOf="parent"
		app:layout_constraintTop_toBottomOf="@+id/toolbar"
		android:visibility="invisible"/>

Add space (Or CMD-OPT-L)

app/src/main/res/layout/safewalk_activity_walk.xml, line 31 at r24 (raw file):

Do it

app/src/main/res/layout/safewalk_activity_walk.xml, line 34 at r24 (raw file):

	<ImageView
		android:id="@+id/emergency"
		android:layout_width="180dp"

Verify that this is the correct width to use (check with iOS as well)

Comments from Reviewable

Review status: all files reviewed at latest revision, 5 unresolved discussions.

app/src/main/res/values/strings.xml, line 278 at r18 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Have you sent the slack message to Erik?

Yes I did.

Comments from Reviewable

Reviewed 1 of 1 files at r23.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 6 unresolved discussions.

a discussion (no related file):
Test on iPad without cellular

Comments from Reviewable

Review status: 19 of 20 files reviewed at latest revision, 6 unresolved discussions.

app/src/main/res/layout/safewalk_activity_main.xml, line 31 at r24 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Add space (Or CMD-OPT-L)

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r26.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Reviewed 2 of 2 files at r27.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r28.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 6 unresolved discussions.

a discussion (no related file):
Update police phone number to<PHONE_NUMBER>

Comments from Reviewable

Review status: all files reviewed at latest revision, 7 unresolved discussions.

a discussion (no related file):
Previously, romrell4 (Eric Romrell) wrote…
Update police phone number to<PHONE_NUMBER>

Done.

app/src/main/java/edu/byu/suite/features/safewalk/controller/SafeWalkMainActivity.java, line 18 at r1 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Still check the phone number

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r29.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Reviewed 1 of 1 files at r30.
Review status: all files reviewed at latest revision, 7 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 21 at r30 (raw file):

        this.latitude = latitude;
        this.longitude = longitude;
        this.datetime = new SimpleDateFormat("yyyy/MM/dd hh:mm:ss").format(Calendar.getInstance().getTime());

Test this

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 24 at r30 (raw file):

    }

    public SafeWalkInfo(String latitude, String longitude){

Duplicate code... One of these should call the other

Comments from Reviewable

Review status: all files reviewed at latest revision, 7 unresolved discussions.

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 21 at r30 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Test this

Done.

app/src/main/java/edu/byu/suite/features/safewalk/model/SafeWalkInfo.java, line 24 at r30 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Duplicate code... One of these should call the other

Done.

Comments from Reviewable

Reviewed 2 of 2 files at r31.
Review status: all files reviewed at latest revision, 5 unresolved discussions.

Comments from Reviewable

Review status: 19 of 20 files reviewed at latest revision, 5 unresolved discussions.

app/src/main/res/values/strings.xml, line 280 at r17 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Get actual video link

Done.

Comments from Reviewable

Reviewed 1 of 1 files at r32.
Review status: all files reviewed at latest revision, 4 unresolved discussions.

Comments from Reviewable

Reviewed 3 of 3 files at r33.
Review status: all files reviewed at latest revision, 4 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 5 unresolved discussions.

a discussion (no related file):
Did you get the correct video URL? https://youtu.be/RFs2eh6XmT4

Comments from Reviewable

Review status: all files reviewed at latest revision, 5 unresolved discussions.

a discussion (no related file):
Previously, romrell4 (Eric Romrell) wrote…
Test on iPad without cellular

Should this comment be in this reviewable or in the iOS one?

a discussion (no related file):
Previously, romrell4 (Eric Romrell) wrote…
Did you get the correct video URL? https://youtu.be/RFs2eh6XmT4

Yup, it's in there already!

Comments from Reviewable

Review status: all files reviewed at latest revision, 3 unresolved discussions.

app/src/main/res/layout/safewalk_activity_walk.xml, line 34 at r24 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Verify that this is the correct width to use (check with iOS as well)

iOS makes the image grow with the size of the screen. Could you do this?

Comments from Reviewable

Reviewed 3 of 3 files at r34.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable

Review status: all files reviewed at latest revision, 2 unresolved discussions.

app/src/main/res/layout/safewalk_activity_walk.xml, line 31 at r24 (raw file):
Previously, romrell4 (Eric Romrell) wrote…
Do it

Or tell me if you think it's fuzzy enough that we should get a larger image

Comments from Reviewable

Reviewed 3 of 3 files at r35.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

Comments from Reviewable


fix: :bug: Match the UI and API path for NotificationSource -> source

Breaking Change: API endpoint for notificationsource should be changed to source
Related to #313

Since this is a breaking change should we bump the pyproject.toml version so that when the next release is prepped for this project we don't forget to bump the major version?


Add github action with trivial test cases with pytest

regarding issue #14

added github action workflow to run continuous integrations tests
added trivial test case with pytest to assert the type of socket instance
run pytest with poetry in ci workflow

need to setup env variables API_KEY and SUPABASE_ID in action secrets
github action workflow log

action secrets

Why are we fixing python version to 3.8 when testing?
This lib should be compatible with python >=3.7, therefore tests should run in 3.7, 3.8, 3.9 and 3.10.

hi @dreinon ,
i that case we could use a matrix build .
thanks

Yes please!  I think it would be nice to use a supabase instance internally in the GitHub Action using Docker so that all developers can test without depending on a specific instance. The gotrue-py library can serve as a reference.

@leynier thanks for the reference material , i will make the necessary changes and update this pr

@RizkyRajitha maybe you can update the websockets version to 10.1, it adds support for Python 3.10.

@dreinon thanks , i will check it

@dreinon now actions are passing in all python versions .
i will try to run supabase in the workflow as well using @leynier references
thanks .

This pull request contains the version number bump to 10.1 for websocket, which is necessary to run the library with Python 3.10, which is the new default version on Ubuntu 22.04.
So do you have an update, when you will complete this pull request and perhaps release a new version?
Can I help with that in some way?

Hi @J0 What is the holdup on this pull request? It has been over a year. It would be nice to have websockets 10.1.

Hm the master branch seems to already be using websockets 10.3 which seems to be causing a merge conflict here, everything else looks fine

Addressed the merge conflict and merged. Thanks for your patience everyone!


Feature : Delete Wishlist #12

This PR contains -

Implementation for delete wishlist endpoint (routes.py)
Test cases for delete wishlist endpoint (test_routes.py)

Got an error on this test. Returning 404 instead of no content if wishlist does not exist.

Discussed this usecase with Professor - whether to return 204/404. Fixed it now.