You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mxnet.apache.org by GitBox <gi...@apache.org> on 2018/06/11 21:35:32 UTC
[GitHub] marcoabreu closed pull request #61: Scripts for Broken Link checker
Job
marcoabreu closed pull request #61: Scripts for Broken Link checker Job
URL: https://github.com/apache/incubator-mxnet-site/pull/61
This is a PR merged from a forked repository.
As GitHub hides the original diff on merge, it is displayed below for
the sake of provenance:
As this is a foreign pull request (from a fork), the diff is supplied
below (as it won't show otherwise due to GitHub magic):
diff --git a/_urlList/check_regression.sh b/_urlList/check_regression.sh
new file mode 100755
index 000000000..734d0594f
--- /dev/null
+++ b/_urlList/check_regression.sh
@@ -0,0 +1,27 @@
+#! /bin/sh
+
+cat blc_output.txt | uniq | grep -Eo "(http|https).* " | sort| uniq > unique_current_urls.txt
+
+cat url_list.txt unique_current_urls.txt | sort | uniq > new_url_list.txt
+regression=false
+while IFS= read -r line
+do
+ err=$(curl -Is $line | head -n 1 | grep 404)
+ if [ "$err" ]; then
+ if [ "$regression" = false ] ; then
+ echo "FAIL: REGRESSION"
+ regression=true
+ fi
+ echo "BROKEN $line $err"
+ fi
+ unset err
+done < new_url_list.txt
+mv new_url_list.txt url_list.txt
+rm -rf unique_current_urls.txt
+rm -rf blc_output.txt
+if [ $regression ]; then
+ echo "FAIL: Found Regression in broken link checker"
+ exit 1
+else
+ echo "SUCCESS: No Regression found"
+fi
diff --git a/_urlList/find_broken_link.sh b/_urlList/find_broken_link.sh
new file mode 100755
index 000000000..c10e9e595
--- /dev/null
+++ b/_urlList/find_broken_link.sh
@@ -0,0 +1,17 @@
+#!/bin/sh
+set -e
+
+
+# Install npm
+apt-get install -y npm
+
+# Install nodejs- v 7.10.1
+#apt-get install -y curl python-software-properties
+curl -sL https://deb.nodesource.com/setup_8.x | bash -
+apt-get install -y nodejs
+
+# Install broken link checker utility
+npm install broken-link-checker -g
+
+# Test broken link and print summary.
+python test_broken_links.py
diff --git a/_urlList/run_as_user.sh b/_urlList/run_as_user.sh
new file mode 100755
index 000000000..db90f0bd0
--- /dev/null
+++ b/_urlList/run_as_user.sh
@@ -0,0 +1,25 @@
+#!/bin/bash
+
+# Exit script with error if any errors occur
+set -e
+
+if [[ ! $1 || ! $2 || ! $3 || ! $4 || ! $5 ]];
+then
+ echo "USAGE: " $(basename $"0") "USER_ID USER_NAME GROUP_ID GROUP_NAME SCRIPT"
+ exit 1
+fi
+
+USER_ID=$1
+USER_NAME=$2
+GROUP_ID=$3
+GROUP_NAME=$4
+SCRIPT=$5
+
+HOME_DIR=/home/${USER_NAME}
+
+groupadd -f -g ${GROUP_ID} ${GROUP_NAME}
+useradd -m -u ${USER_ID} -g ${GROUP_NAME} ${USER_NAME}
+chown -R ${USER_NAME}:${GROUP_NAME} ${HOME_DIR}
+chown -R ${USER_NAME}:${GROUP_NAME} /usr/local/lib/
+echo "%${GROUP_NAME} ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
+su -m ${USER_NAME} -c "export HOME=${HOME_DIR}; ${SCRIPT}"
diff --git a/_urlList/test_broken_links.py b/_urlList/test_broken_links.py
new file mode 100755
index 000000000..a057f394f
--- /dev/null
+++ b/_urlList/test_broken_links.py
@@ -0,0 +1,84 @@
+#!/usr/bin/env python
+
+import sys
+from subprocess import check_output, STDOUT, CalledProcessError
+
+
+def prepare_link_test_result(command_output):
+ # Constant string patterns
+ NEW_PAGE_TEST_START_REGEX = "Getting links from:"
+ BROKEN_PAGE_START_REGEX = "BROKEN"
+ PAGE_TEST_END_REGEX = "Finished! "
+
+ # Whitelisted broken links patterns
+ HTTP_403_REGEX = "(HTTP_403)"
+ HTTP_401_REGEX = "(HTTP_401)"
+ BLC_UNKNOWN_REGEX = "(BLC_UNKNOWN)"
+ HTTP_UNDEFINED = "HTTP_undefined"
+ FALSE_SCALA_API_DOC_LINK = "java$lang.html"
+ FALSE_SCALA_API_DEPRECATED_LINK = "api/scala/docs/deprecated-list.html"
+ FALSE_PAPER_LINK = "https://static.googleusercontent.com/media/research.google.com/en/pubs/archive/45488.pdf"
+
+ # Initialize flags with happy case
+ current_page = ""
+ current_page_broken = False
+ current_page_broken_links = ""
+
+ broken_links_count = 0
+ broken_links_summary = ""
+
+ for line in command_output.splitlines():
+ if line.startswith(NEW_PAGE_TEST_START_REGEX):
+ # New page test is starting. Reset the flags
+ current_page = line.split(NEW_PAGE_TEST_START_REGEX)[1]
+ current_page_broken = False
+ current_page_broken_links = ""
+
+ if line.find(BROKEN_PAGE_START_REGEX) != -1:
+ # Skip (401, 403, unknown issues)
+ if HTTP_403_REGEX not in line and HTTP_401_REGEX not in line and BLC_UNKNOWN_REGEX not in line and HTTP_UNDEFINED not in line and FALSE_SCALA_API_DOC_LINK not in line and FALSE_SCALA_API_DEPRECATED_LINK not in line and FALSE_PAPER_LINK not in line:
+ current_page_broken = True
+ current_page_broken_links += line.split(BROKEN_PAGE_START_REGEX)[1] + "\n"
+
+ if line.startswith(PAGE_TEST_END_REGEX):
+ if current_page_broken:
+ broken_links_count += 1
+ broken_links_summary += "\nURL - " + current_page
+ broken_links_summary += "\nBroken Links\n" + current_page_broken_links
+
+ return broken_links_count, broken_links_summary
+
+# Command to check broken links
+# Reference - https://www.npmjs.com/package/broken-link-checker
+cmd = "blc https://mxnet.incubator.apache.org -ro"
+broken_links_count = 0
+broken_links_summary = ""
+
+text_file = open("./blc_output.txt", 'w')
+command_output = ""
+print("Starting broken link test with command $ " + cmd)
+try:
+ command_output = check_output(cmd, stderr=STDOUT, shell=True)
+except CalledProcessError as ex:
+ if ex.returncode > 1:
+ print("Failed to do broken link test. Console output : \n" + ex.output)
+ sys.exit(ex.returncode)
+ command_output = ex.output
+
+text_file.write(command_output)
+text_file.close()
+broken_links_count, broken_links_summary = prepare_link_test_result(command_output)
+# These START and END string in output is used to parse the script output in automated scripts and nightly jobs.
+print("START - Broken links count")
+print(broken_links_count)
+print("END - Broken links count")
+
+print("START - Broken links summary")
+
+if broken_links_count == 0:
+ print("No broken links in https://mxnet.incubator.apache.org")
+ print("END - Broken links summary")
+else:
+ print(broken_links_summary)
+ print("END - Broken links summary")
+
diff --git a/_urlList/url_list.txt b/_urlList/url_list.txt
new file mode 100644
index 000000000..719559c86
--- /dev/null
+++ b/_urlList/url_list.txt
@@ -0,0 +1,293 @@
+http://archive.apache.org/dist/incubator/mxnet/1.0.0/apache-mxnet-src-0.12.1-incubating.tar.gz.md5
+http://docs.opencv.org/master/da/d54/group__imgproc__transform.html
+http://grouplens.org/datasets/movielens/
+http://image-net.org/index
+http://mxnet.incubator.apache.org/tutorials/basic/naming.html
+http://mxnet.io/architecture/index.html
+http://mxnet.io/community/index.html
+http://mxnet.io/community/index.md
+http://mxnet.io/faq/index.html
+http://mxnet.io/install/index.html
+http://mxnet.io/tutorials/embedded/wine_detector.html
+http://mxnet.io/tutorials/index.html
+http://opencv.org/
+http://opencv.org/opencv-3-2.html
+http://scipy.org/install.html
+http://www.image-net.org/
+http://yann.lecun.com/exdb/mnist/nnnnDefined
+https://blog.kovalevskyi.com/mxnet-distributed-training-explained-in-depth-part-1-b90c84bda725
+https://developer.apple.com/download/more/
+https://developer.apple.com/xcode/
+https://github.com/NVIDIA/nvidia-docker/wiki/Installation
+https://github.com/apache/incubator-mxnet/%0Ablob/master/scala-package/examples/src/main/scala/org/apache/mxnetexamples/inferexample/%0Aimageclassifier/
+https://github.com/apache/incubator-mxnet/%0Ablob/master/scala-package/examples/src/main/scala/org/apache/mxnetexamples/inferexample/%0Aobjectdetector/
+https://github.com/dmlc/mxnet/blob/master/scala-package/examples/src/main/scala/ml/dmlc/mxnetexamples/neuralstyle/NeuralStyle.scala
+https://github.com/dmlc/mxnet/tree/master/scala-package/examples/src/main/scala/ml/dmlc/mxnetexamples
+https://github.com/incubator-mxnet/tree/master/scala-package/examples/
+https://itunes.apple.com/us/app/xcode/id497799835
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Activation
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#BatchNorm
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Dense
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Dropout
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Embedding
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Flatten
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#HybridLambda
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#Lambda
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/basic_layers.html#LeakyReLU
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#AvgPool1D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#AvgPool2D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#AvgPool3D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv1D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv1DTranspose
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv2D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv2DTranspose
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv3D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#Conv3DTranspose
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalAvgPool1D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalAvgPool2D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalAvgPool3D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalMaxPool1D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalMaxPool2D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#GlobalMaxPool3D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#MaxPool1D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#MaxPool2D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/nn/conv_layers.html#MaxPool3D
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#BidirectionalCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#DropoutCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#GRUCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#HybridRecurrentCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#LSTMCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#ModifierCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RNNCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell.begin_state
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell.forward
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell.reset
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell.state_info
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#RecurrentCell.unroll
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#ResidualCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#SequentialRNNCell
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#SequentialRNNCell.add
+https://mxnet.incubator.apache.org/_modules/mxnet/gluon/rnn/rnn_cell.html#ZoneoutCell
+https://mxnet.incubator.apache.org/api/julia/index.html
+https://mxnet.incubator.apache.org/api/python/gluon.html#mxnet.gluon.loss.softmax_cross_entropy_loss
+https://mxnet.incubator.apache.org/api/python/gluon.html#mxnet.gluon.nn.Sequential
+https://mxnet.incubator.apache.org/api/python/gluon.html#trainer
+https://mxnet.incubator.apache.org/api/python/gluon/gluon.html
+https://mxnet.incubator.apache.org/api/python/gluon/gluon.html#mxnet.gluon.Block
+https://mxnet.incubator.apache.org/api/python/gluon/gluon.html#mxnet.gluon.Block.name
+https://mxnet.incubator.apache.org/api/python/gluon/gluon.html#mxnet.gluon.Parameter
+https://mxnet.incubator.apache.org/api/python/gluon/gluon.html#mxnet.gluon.ParameterDict
+https://mxnet.incubator.apache.org/api/python/image.html#mxnet.image.RandomOrderAug
+https://mxnet.incubator.apache.org/api/python/index.html
+https://mxnet.incubator.apache.org/api/python/index.html#autograd-api
+https://mxnet.incubator.apache.org/api/python/index.html#callback-api
+https://mxnet.incubator.apache.org/api/python/index.html#contrib-package
+https://mxnet.incubator.apache.org/api/python/index.html#gluon-api
+https://mxnet.incubator.apache.org/api/python/index.html#image-api
+https://mxnet.incubator.apache.org/api/python/index.html#io-api
+https://mxnet.incubator.apache.org/api/python/index.html#kvstore-api
+https://mxnet.incubator.apache.org/api/python/index.html#metric-api
+https://mxnet.incubator.apache.org/api/python/index.html#module-api
+https://mxnet.incubator.apache.org/api/python/index.html#ndarray-api
+https://mxnet.incubator.apache.org/api/python/index.html#optimization-api
+https://mxnet.incubator.apache.org/api/python/index.html#run-time-compilation-api
+https://mxnet.incubator.apache.org/api/python/index.html#symbol-api
+https://mxnet.incubator.apache.org/api/python/metric.html#mxnet.metric.Accuracy
+https://mxnet.incubator.apache.org/api/python/optimization.html#mxnet.initializer.Xavier
+https://mxnet.incubator.apache.org/api/python/optimization.html#mxnet.optimizer.Adam
+https://mxnet.incubator.apache.org/api/python/optimization.html#mxnet.optimizer.SGD
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#module-mxnet.initializer
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Bilinear
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Constant
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.FusedRNN
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.InitDesc
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Initializer
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Initializer.dumps
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Initializer.set_verbosity
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.LSTMBias
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Load
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.MSRAPrelu
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Mixed
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Normal
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.One
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Orthogonal
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Uniform
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Xavier
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.Zero
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.initializer.register
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.lr_scheduler.LRScheduler
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.AdaDelta
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.AdaGrad
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Adam
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Adamax
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.DCASGD
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.FTML
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Ftrl
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.NAG
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Nadam
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.create_optimizer
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.create_state
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.create_state_multi_precision
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.register
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.set_learning_rate
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.set_lr_mult
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.set_lr_scale
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.set_wd_mult
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.update
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Optimizer.update_multi_precision
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.RMSProp
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.SGD
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.SGLD
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Signum
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Test
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Test.create_state
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Test.update
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Updater
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Updater.get_states
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.Updater.set_states
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.ccSGD
+https://mxnet.incubator.apache.org/api/python/optimization/optimization.html#mxnet.optimizer.get_updater
+https://mxnet.incubator.apache.org/api/scala/docs/java$lang.html
+https://mxnet.incubator.apache.org/api/scala/index.html
+https://mxnet.incubator.apache.org/community/index.md
+https://mxnet.incubator.apache.org/community/powered_by.html
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator.html
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html#a03cb2c614a863bb13870e4bca11f0c60
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html#a270a37e7c44ce92030bf9e5a26c30f4d
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html#a4fd597ed27227e42234d4b43826fc0f9
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html#aaa64545e32685e361acac218ef764d76
+https://mxnet.incubator.apache.org/doxygen/classmxnet_1_1common_1_1random_1_1RandGenerator_3_01cpu_00_01DType_01_4.html#ad59a015f903f3f139a841d61d510b8eb
+https://mxnet.incubator.apache.org/doxygen/namespacemembers.html
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a050beaa505f11e0b844deb91efe0cac2
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a0906e49a921265634672f555451075ed
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a0a1395f21139ba975a6268539df6a15d
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a0c8542953df5093060985db5518a339b
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a1183dd8b779392f7ddafe1b010a6a2fe
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a15dfd6f3fa03dc2cf39dbab1225e1a51
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a2846f4556c9ca9bd0f567504ce60f274
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a294d2660c065f8d229c27e65f0461e10
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a30bfda0e3e1b347e3057097cafc628be
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a31ef33571a4f6ba8847eeee1f4907141
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a3455659b714488e8e53e4e4580a43ec7
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a4421326e33f2a848cb2fa3e70ab24ff4
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a4dafe3aae43025fd21bc44b98c18ed1e
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a502e3e00dc61cedb9c6eef711f1176ac
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a51f9b094369a349c05463de2be9f0a31
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a536b732faa980e1de446c552460ff76a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a536b732faa980e1de446c552460ff76aa777c7ad3afa566f2e841f12c81aab254
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a536b732faa980e1de446c552460ff76aabf6395d98a9668e8066a0c0da5570608
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a536b732faa980e1de446c552460ff76aac095f52c31076adc7207f4a4f17d7aa3
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a536b732faa980e1de446c552460ff76aadf6c6faf0de1e55119c679180c99e584
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a5a28062f52ca576a126599e7ad487077
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a5bf83454c8f41259eb9d471f59feda2b
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a6606bef15f41cccade14c9400e8447cf
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a66510f6a344ee38bb89cb552e974b838
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a666f1055e5401ecec0278e8ba5790732
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a6dca73c81706d54b0ddb0ef967d1e132
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a6e14bb5f6ffc81892feca8d1da658687
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a6f5428fbf261a94eaac079ec24413815
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a7cd7094ef222e9ae1f520c3b6a214398
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a7cd7094ef222e9ae1f520c3b6a214398a001b85096e07108e174fe4c406368a26
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a7cd7094ef222e9ae1f520c3b6a214398a03b4c19f34d3add7deecd7ef6c54b42a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a7cd7094ef222e9ae1f520c3b6a214398a1b850737dba4d2c42a2687d14c10f383
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a7cd7094ef222e9ae1f520c3b6a214398a640322face587ca12684378d0f053d51
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a850af9d76d9d4beaeb5234c1434973e3
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a89a5f0f5cfd9e1e94604a7b42dda818a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a89a5f0f5cfd9e1e94604a7b42dda818aa334598420a4246d5412ddc346b2b57bd
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a89a5f0f5cfd9e1e94604a7b42dda818aabbc1ba0bb3f8647dcfd8bad69efdbb51
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a89a5f0f5cfd9e1e94604a7b42dda818aaef9818c8aae9d0046b3d9033a62fcfbb
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a9097a269dd76d833c014149ff3eaab9b
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3b
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3ba07fa7a19aa722c635a15e94cb7f50416
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3ba6cd75f41e0ec8d61b0a2f0e20ef6d1e8
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3ba739f2f416f05f4728c217f09e93958d1
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3ba9f2b960005d2a3a5f35ac32809d84db7
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3bac41ceb98eeb9b2e208e3e242a7357142
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#a998b74220fab2b012cf8a179650e1b3bac41fda8552e9d327ad3b06b1bafa663a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aa005a02aac4f297b6fab561e907e89e3
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2b
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2ba18bf63b4c196f79c9bca4ad8637e8fef
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2ba2157864769b54d1d0f8f9be63393e7d6
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2ba57f93219462690bc438372ecd92fedd5
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2ba7934d40c7c17315d892e8d5d745b1c66
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aad5fec2b4bceabbf4b884460cc2e0a2bafb751f6ee1af15e773242f2accd2dbff
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ab0d55b0edf98cf8f3caeb050662ae9ec
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ab12f1853179b1456152a563edff844a9
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ab54083e73557ebb63c021653da688810
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#abadedc1b42ee3e5b8852e63783b982ef
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ac2fb286fd7ddfbc7af1456f6c7a7ee52
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#acb83431b596f805fabcc4ba400c62e85
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aa11ce5dbb8ad355e9ee5a678f2f51a5bb
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aa200492eeec6fa431683ef0d943bfbc2d
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aa322b8b178929b43f1b4b16c8cb9003ef
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aa7636cc230df4abe46f3210846faac799
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aaf3ee084ba1d9a6203922ff7c9ddb12e3
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ace60510752753f459193f95cab0e9e1aaf64429479d4a48998e6cd122a3117628
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad77e2048b7e8db91a12e05b477aac13e
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad7801fb2dd68294d4c7a9e289bc071ad
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad7801fb2dd68294d4c7a9e289bc071ada3864860a073c64d74d3fc8e765fa6cad
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad7801fb2dd68294d4c7a9e289bc071ada9f2b960005d2a3a5f35ac32809d84db7
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad7801fb2dd68294d4c7a9e289bc071adae3bade32f12a5139b27ef40b3689b77c
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ad8e0dad88ce27133fd24811763b7afdb
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ae3356844b657c9ae1b84d3ddd56bccf6
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ae4143fe21881cbf0174bba638e8e0330
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ae7b0809624683afc59b6d7f7784d8bfb
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#ae82f70918b2d946f7ad66a158b1733dc
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#aed55e8197182b7c66126902b2a43739a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#af26b09fbcda865d34ec4fdad482d266a
+https://mxnet.incubator.apache.org/doxygen/namespacemxnet.html#afaa687cbca9e992614be285711c1d72d
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1ObjectPoolAllocatable.html
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1ObjectPoolAllocatable.html#a68ed487cb6de6194a4798fdbbfd04597
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1ObjectPoolAllocatable.html#aaf92ecb0cb6542b5c3f70ec31a31db4e
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1ObjectPoolAllocatable.html#details
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__idx__check.html
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__idx__check.html#a325e38479cce9fd6f444ae5ba3b3a2f4
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__idx__check.html#details
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__indptr__check.html
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__indptr__check.html#a5da824c75914344ce1a228fcec1265b2
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1csr__indptr__check.html#details
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1helper_1_1UniqueIf_3_01T[kSize]_4.html
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1helper_1_1UniqueIf_3_01T[kSize]_4.html#af31c1728c4b497d304680d69d4e61421
+https://mxnet.incubator.apache.org/doxygen/structmxnet_1_1common_1_1helper_1_1UniqueIf_3_01T[kSize]_4.html#details
+https://mxnet.incubator.apache.org/get_started/why_mxnet.html
+https://mxnet.incubator.apache.org/index.html
+https://mxnet.incubator.apache.org/install/ubuntu_setup.html
+https://mxnet.incubator.apache.org/install/windows_setup.html
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/io.html#BucketSentenceIter
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/io.html#BucketSentenceIter.next
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/io.html#BucketSentenceIter.reset
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.__call__
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.begin_state
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.pack_weights
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.reset
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.unpack_weights
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BaseRNNCell.unroll
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#BidirectionalCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#DropoutCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#FusedRNNCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#FusedRNNCell.unfuse
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#GRUCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#LSTMCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#RNNCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#RNNParams
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#RNNParams.get
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#ResidualCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#SequentialRNNCell
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#SequentialRNNCell.add
+https://mxnet.incubator.apache.org/versions/master/_modules/mxnet/rnn/rnn_cell.html#ZoneoutCell
+https://mxnet.incubator.apache.org/versions/master/api/python/symbol/contrib.html
+https://mxnet.incubator.apache.org/versions/master/api/scala/docs/java$lang.html
+https://mxnet.incubator.apache.org/versions/master/community/index.html
+https://mxnet.incubator.apache.org/versions/master/faq/nnpack.html
+https://mxnet.incubator.apache.org/versions/master/faq/perf.html
+https://mxnet.incubator.apache.org/versions/master/faq/s3_integration.html
+https://mxnet.incubator.apache.org/versions/master/faq/visualize_graph.html
+https://mxnet.incubator.apache.org/versions/master/how_to/distributed_training.html
+https://mxnet.incubator.apache.org/versions/master/versions/master/api/python/ndarray/sparse.html
+https://opendatacommons.org/licenses/pddl/
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
users@infra.apache.org
With regards,
Apache Git Services